我有一个datepicker,但它允许我输入任何文本.我想禁止用户输入文字.应允许用户从日历中选择日期.
<Window x:Class="MyTestForDatePicker.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<!--<Grid>-->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto"></ColumnDefinition>
<ColumnDefinition></ColumnDefinition>
<ColumnDefinition Width="auto"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="auto"></RowDefinition>
<RowDefinition></RowDefinition>
</Grid.RowDefinitions>
<DatePicker Grid.Column="0" Grid.Row="0" Margin="2" Name="MySelectedDate" VerticalContentAlignment="Center" ></DatePicker>
<DatePickerTextBox Grid.Column="1" Grid.Row="3" Margin="2" Name="SelectedDate" IsReadOnly="True"></DatePickerTextBox>
<Button Grid.Column="1" Grid.Row="1" Margin="100,102,203,154" VerticalContentAlignment="Center" Name="Ok" Click="Ok_Click_1"/>
</Grid>
Run Code Online (Sandbox Code Playgroud)
小智 32
似乎DatePicker上没有任何属性可以使TextBox只读.
请尝试以下样式设置
<DatePicker x:Name="MyDatePicker">
<DatePicker.Resources>
<Style TargetType="DatePickerTextBox">
<Setter Property="IsReadOnly" Value="True"/>
</Style>
</DatePicker.Resources>
</DatePicker>
Run Code Online (Sandbox Code Playgroud)
小智 17
添加属性
Focusable = "False"
到你的日期选择器.这不应该允许用户在datepicker文本框中输入任何字符串
<DatePickerTextBox Grid.Column="1" Grid.Row="3" Margin="2" Name="SelectedDate" IsReadOnly="True" Focusable="False"></DatePickerTextBox>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24924 次 |
| 最近记录: |