【问题标题】:cancel edit in wpf for datepicker在 wpf 中取消日期选择器的编辑
【发布时间】:2018-05-03 15:18:51
【问题描述】:
<DataGrid Name="Tst"  AutoGenerateColumns="False">
    <DataGrid.Columns>
         <DataGridTemplateColumn Header="RecordDate">
               <DataGridTemplateColumn.CellTemplate>
                     <DataTemplate>
                         <DatePicker Text="{Binding RecordDate}" />
                     </DataTemplate>
               </DataGridTemplateColumn.CellTemplate>
         </DataGridTemplateColumn>            
     </DataGrid.Columns>
</DataGrid>

我有一个按钮 Enable edit 。仅当按下按钮时才需要启用日期选择器;否则编辑应该被禁用

【问题讨论】:

  • 那为什么一开始就让它可编辑呢?
  • 我有一个按钮 Enable edit 。仅当按下按钮时才需要启用日期选择器;否则编辑应该被禁用
  • 然后将 DatePickerTextBox 的 IsReadOnly 属性或 DatePicker 的 IsEnabled 属性绑定到源属性并实现 INotifyPropertyChanged。

标签: c# wpf datagrid


【解决方案1】:

您可以将DatePickerTextBox 设为只读:

<DataGridTemplateColumn Header="RecordDate">
    <DataGridTemplateColumn.CellTemplate>
        <DataTemplate>
            <DatePicker Text="{Binding RecordDate}">
                <DatePicker.Resources>
                    <Style TargetType="DatePickerTextBox">
                        <Setter Property="IsReadOnly" Value="True" />
                    </Style>
                </DatePicker.Resources>
            </DatePicker>
        </DataTemplate>
    </DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多