首页
学习
活动
专区
圈层
工具
发布
50 篇文章
1
【愚公系列】2023年09月 WPF控件专题 XAML介绍
2
【愚公系列】2023年09月 WPF控件专题 WPF应用程序组成
3
【愚公系列】2023年09月 WPF控件专题 Window窗体属性和事件
4
【愚公系列】2023年09月 WPF控件专题 Label、TextBox、PasswordBox控件介绍
5
【愚公系列】2023年09月 WPF控件专题 Button控件详解
6
【愚公系列】2023年09月 WPF控件专题 RadioButton控件详解
7
【愚公系列】2023年09月 WPF控件专题 CheckBox控件详解
8
【愚公系列】2023年09月 WPF控件专题 Image控件详解
9
【愚公系列】2023年09月 WPF控件专题 Border控件详解
10
【愚公系列】2023年09月 WPF控件专题 ComboBox控件详解
11
【愚公系列】2023年09月 WPF控件专题 ListBox控件详解
12
【愚公系列】2023年09月 WPF控件专题 DatePicker控件详解
13
【愚公系列】2023年09月 WPF控件专题 Calendar控件详解
14
【愚公系列】2023年09月 WPF控件专题 Slider控件详解
15
【愚公系列】2023年09月 WPF控件专题 ProgressBar控件详解
16
【愚公系列】2023年10月 WPF控件专题 StackPanel控件详解
17
【愚公系列】2023年10月 WPF控件专题 WrapPanel控件详解
18
【愚公系列】2023年10月 WPF控件专题 DockPanel控件详解
19
【愚公系列】2023年10月 WPF控件专题 Canvas控件详解
20
【愚公系列】2023年10月 WPF控件专题 Grid控件详解
21
【愚公系列】2023年10月 WPF控件专题 Groupbox控件详解
22
【愚公系列】2023年10月 WPF控件专题 Expander控件详解
23
【愚公系列】2023年10月 WPF控件专题 TabControl控件详解
24
【愚公系列】2023年10月 WPF控件专题 Frame控件详解
25
【愚公系列】2023年10月 WPF控件专题 ListView控件详解
26
【愚公系列】2023年10月 WPF控件专题 DataGrid控件详解
27
【愚公系列】2023年10月 WPF控件专题 Menu控件详解
28
【愚公系列】2023年10月 WPF控件专题 ContextMenu控件详解
29
【愚公系列】2023年10月 WPF控件专题 TreeView控件详解
30
【愚公系列】2023年10月 WPF控件专题 ToolBar控件详解
31
【愚公系列】2023年10月 WPF控件专题 ToolBarTray控件详解
32
【愚公系列】2023年10月 WPF控件专题 StatusBar控件详解
33
【愚公系列】2023年11月 WPF控件专题 MediaElement控件详解
34
【愚公系列】2023年11月 WPF控件专题 RichTextBox控件详解
35
【愚公系列】2023年11月 WPF控件专题 GridView控件详解
36
【愚公系列】2023年11月 WPF控件专题 Rectangle控件详解
37
【愚公系列】2023年11月 WPF控件专题 Popup控件详解
38
【愚公系列】2023年11月 WPF控件专题 OpenFileDialog控件详解
39
【愚公系列】2023年11月 WPF控件专题 SaveFileDialog控件详解
40
【愚公系列】2023年11月 WPF控件专题 RepeatButton控件详解
41
【愚公系列】2023年11月 WPF控件专题 Ellipse控件详解
42
【愚公系列】2023年11月 WPF控件专题 Polygon控件详解
43
【愚公系列】2023年11月 WPF控件专题 Path控件详解
44
【愚公系列】2023年11月 WPF控件专题 WindowFormsHost控件详解
45
【愚公系列】2023年11月 WPF控件专题 WebBrowser控件详解
46
【愚公系列】2023年11月 WPF控件专题 Validation控件详解
47
【愚公系列】2023年11月 WPF控件专题 Page控件详解
48
【愚公系列】2023年11月 WPF控件专题 PrintDialog控件详解
49
【愚公系列】2023年11月 WPF控件专题 Track控件详解
50
【愚公系列】2023年11月 WPF控件专题 Polyline控件详解

【愚公系列】2023年09月 WPF控件专题 DatePicker控件详解

🏆 作者简介,愚公搬代码 🏆《头衔》:华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,阿里云专家博主,腾讯云优秀博主,掘金优秀博主,51CTO博客专家等。 🏆《近期荣誉》:2022年CSDN博客之星TOP2,2022年华为云十佳博主等。 🏆《博客内容》:.NET、Java、Python、Go、Node、前端、IOS、Android、鸿蒙、Linux、物联网、网络安全、大数据、人工智能、U3D游戏、小程序等相关领域知识。 🏆🎉欢迎 👍点赞✍评论⭐收藏

🚀前言

WPF控件是Windows Presentation Foundation(WPF)中的基本用户界面元素。它们是可视化对象,可以用来创建各种用户界面。WPF控件可以分为两类:原生控件和自定义控件。

原生控件是由Microsoft提供的内置控件,如Button、TextBox、Label、ComboBox等。这些控件都是WPF中常见的标准用户界面元素。

自定义控件则允许开发人员使用XAML和C#等编程语言来创建个性化的用户界面元素。自定义控件可以根据需求提供更多的功能和自定义化选项,以及更好的用户体验。

🚀一、DatePicker控件详解

WPF中的DatePicker控件用于选择日期。它允许用户从一个可视日历中选择日期,也可以根据需要手动输入日期。

以下是一个简单的使用示例:

代码语言:html
复制
<DatePicker SelectedDate="{Binding MyDate}" />

上述代码绑定了一个名为"MyDate"的属性,以便在选择日期时自动更新值。也可以将"SelectedDate"属性设置为特定的日期值,以便在控件上显示默认日期。

DatePicker控件还提供其他属性,以便进一步自定义控件的行为和外观。例如,可以设置DatePickerFormat属性来确定日期格式,以及设置FirstDayOfWeek属性来确定日历开始的星期几。

代码语言:html
复制
<DatePicker SelectedDate="{Binding MyDate}" 
            DatePickerFormat="Short" 
            FirstDayOfWeek="Monday" />

上述代码将DatePickerFormat属性设置为"Short",这意味着控件将按照短日期格式显示选定的日期。同时,将FirstDayOfWeek属性设置为"Monday",表示日历将从星期一开始。

除了这些常用属性外,DatePicker控件还提供了许多其他自定义选项,以满足各种日期选择需求。

🔎1.属性介绍

WPF中DatePicker控件具有以下属性:

  1. SelectedDate:获取或设置选定的日期。
  2. DisplayDate:获取或设置显示的日期。
  3. FirstDayOfWeek:获取或设置一周的第一天。
  4. CalendarStyle:获取或设置应用于控件中的日历的样式。
  5. IsDropDownOpen:获取或设置一个值,该值指示下拉式日历是否显示。
  6. IsTodayHighlighted:获取或设置一个值,该值指示是否突出显示当前日期。
  7. SelectedDateFormat:获取或设置选定日期的格式。
  8. Text:获取或设置控件的文本。

🔎2.常用场景

DatePicker控件常用于需要用户选择日期的场景,如预约、日程安排、出生日期、报告日期、截止日期等。在WPF中使用DatePicker控件可以方便地实现日期选择功能,同时还支持自定义日期格式、限制可选范围等功能。常见的使用场景包括:

  1. 预约:用户在预约时需要指定预约日期,使用DatePicker控件可以方便地实现日期选择。
  2. 日程安排:用户可以通过DatePicker控件选择需要安排的日期,以便进行日程安排。
  3. 报告日期:在生成报告时,需要指定报告生成的日期,使用DatePicker控件可以方便地选择日期。
  4. 截止日期:在进行任务分配时,需要指定截止日期,使用DatePicker控件可以方便地实现日期选择功能。
  5. 出生日期:在进行用户注册时,需要指定出生日期,使用DatePicker控件可以方便地选择日期。

DatePicker控件在WPF中可用于各种需要用户选择日期的场景,可以大大提高用户体验和软件的易用性。

🔎3.具体案例

代码语言:c#
复制
<Grid>
    <!--IsTodayHighlighted 默认 True  IsDropDownOpen 默认false FirstDayOfWeek 默认值 Sunday
    DisplayDate 要显示的时间 并不显示在日期中 SelectedDateFormat 默认 Short
    -->
    <DatePicker Name="dpDate" HorizontalAlignment="Left" Margin="85,80,0,0" VerticalAlignment="Top" Height="27" Width="183"  DisplayDateStart="2020-04-10" DisplayDateEnd="2020-5-31" FirstDayOfWeek="Monday" IsDropDownOpen="False" IsTodayHighlighted="False" SelectedDate="2020-5-5" SelectedDateFormat="Short" SelectedDateChanged="DpDate_SelectedDateChanged" >
        <DatePicker.Resources>
            <Style TargetType="DatePickerTextBox" >
                <Setter Property="BorderThickness" Value="0"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate>
                            <TextBox x:Name="PART_TextBox" Text="{Binding Path=SelectedDate, StringFormat={}{0:yyyy-MM-dd}, RelativeSource={RelativeSource AncestorType={x:Type DatePicker}}}" />
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
        </DatePicker.Resources>
    </DatePicker>

</Grid>
代码语言:c#
复制
private void DpDate_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{
    MessageBox.Show(dpDate.Text);
    DateTime dt = Convert.ToDateTime(dpDate.Text);
    string date = dt.ToString("yyyy-MM-dd");//将选择的日期格式化
    MessageBox.Show(dpDate.SelectedDate.Value.ToString());
}

我正在参与2023腾讯技术创作特训营第二期有奖征文,瓜分万元奖池和键盘手表

下一篇
举报
领券