zoukankan      html  css  js  c++  java
  • Windows Phone 7 日期选择控件DatePicker和时间选择控件TimePicker

         DatePicker和TimePicker控件是微软的Toolkit组件里面的控件。

         DatePicker是日期的选择控件,运用于日期格式的输入。实现的效果如下

         TimePicker是时间的选择控件,运用于时间格式的输入。实现的效果如下

    在Windows Phone 7程序中使用这两个控件

    1、加载Microsoft.Phone.Controls.Toolkit.dll的引用

    在xaml中添加空间引用

    xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"

    2、xaml调用语法

    <StackPanel x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
    <toolkit:DatePicker x:Name="datePicker" Header="DatePicker日期选择控件" Value="2/3/2010" />
    <toolkit:TimePicker x:Name="timePicker" Header="TimePicker时间选择控件" ValueStringFormat="{}{0:T}"/>
    <toolkit:DatePicker x:Name="datePicker1" Header="扩展的DatePicker控件" Value="2/3/2010"
    PickerPageUri
    ="/DatePickerDemo;component/CustomPage.xaml" />
    </StackPanel>

    显示如下

    PickerPageUri 是指扩展的控件的链接URL,就是自己实现了对这个控件的扩展的地址。

    扩展控件需要继承IDateTimePickerPage接口

    下面是CustomPage.xaml的代码

    <Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
    <Border BorderBrush="Red" Background="Orange" Height="200" Width="300">
    <Button Content="DateTime Now" x:Name="btn" Click="btn_Click"/>
    </Border>
    </Grid>
    public partial class CustomPage : PhoneApplicationPage, IDateTimePickerPage
    {
    public CustomPage()
    {
    InitializeComponent();
    }

    #region IDateTimePickerPage Members

    public DateTime? Value
    {
    get;
    set;
    }

    #endregion

    private void btn_Click(object sender, RoutedEventArgs e)
    {
    // 选择时间并关闭页面
    Value = DateTime.Now;
    NavigationService.GoBack();
    //返回
    }
    }

    ValueChanged事件是选择了日期或者时间后触发的事件

    在MainPage.xaml.cs页面演示这个事件的使用

    public partial class MainPage : PhoneApplicationPage
    {
    // Constructor
    public MainPage()
    {
    InitializeComponent();
    this.datePicker.ValueChanged += new EventHandler<DateTimeValueChangedEventArgs>(picker_ValueChanged);
    }

    void picker_ValueChanged(object sender, DateTimeValueChangedEventArgs e)
    {
    DateTime date
    = (DateTime)e.NewDateTime;
    MessageBox.Show(date.ToString(
    "d"));
    }
    }

    选择了日期之后出现的效果如下:

  • 相关阅读:
    1.4 build命令
    2.2-2 文章模块开发【添加文章页面脚本编写】
    2.2-1 文章模块开发 【入口脚本及模板的创建】
    2.1 开始一个项目 【功能梳理】
    [微信小程序]不在以下合法域名列表中
    [微信小程序]swiper保持宽高比
    爸爸一路走好
    LVM日记
    欲玩Discuz_X3.2,无奈不支持php7,再装个php5.3,编译到一半报错
    /sbin/ldconfig: /usr/local/lib64/libstdc++.so.6.0.22-gdb.py 不是 ELF 文件
  • 原文地址:https://www.cnblogs.com/linzheng/p/2005216.html
Copyright © 2011-2022 走看看