《SilverLight2快速入门》之基本控件Calendar

2016-08-20 10:41:53来源:http://wangjierui.blog.51cto.com/186879/118027作者:王杰瑞人点击


Calendar控件在工具箱中有,但是奇怪的是在SDK中并没有相关说明,也许是我本地安装有问题。我联想ASP.NET和WindowsForm中Calendar控件的相关用法,简单试验了一下。
下面试验实现获取选择的日期值,和使Calendar显示指定的日期值。
XAML代码中用到了Canvas布局。

<UserControl xmlns:basics="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls"x:Class="_51CTO.lesson02.Calendar" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"Width="400" Height="300"> <Canvas Background="LightSteelBlue"> <basics:Calendar Name="Calendar1" Canvas.Top="0" Canvas.Left="0" SelectedDatesChanged="Calendar_SelectedDatesChanged"></basics:Calendar> <TextBox Name="SelectedDate" Canvas.Top="170" Canvas.Left="0" Width="100"></TextBox> <Button Name="SetDate" Content="设置"Canvas.Top="170" Canvas.Left="110" Width="50" Click="Button_Click"></Button> </Canvas> </UserControl>
C#代码如下,分别就选择日期和设置按钮点击实现:

namespace _51CTO.lesson02 { public partial class Calendar : UserControl { public Calendar() { InitializeComponent(); } private void Calendar_SelectedDatesChanged(object sender, SelectionChangedEventArgs e) { SelectedDate.Text=String.Format("{0:yyyy-MM-dd}",Calendar1.SelectedDate); } private void Button_Click(object sender, RoutedEventArgs e) { Calendar1.IsTodayHighlighted = true; Calendar1.DisplayDate = DateTime.Parse(SelectedDate.Text); Calendar1.SelectedDate = DateTime.Parse(SelectedDate.Text); } } }
效果图如下:

点击设置按钮可以根据文本框中输入的日期来切换Calendar显示。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台