管理DateTimerPicker控件WPF中的更改



我在WPF mvc应用程序中使用DateTimePicker。它看起来像这样:

<Label Content="Date: "/>
<xctk:DateTimePicker 
Value="{Binding Example.FirstDate, 
Mode=TwoWay,
UpdateSourceTrigger=PropertyChanged, 
Converter={StaticResource validDateConverter}}"
Format="Custom" 
FormatString="{}dd/MM/yyyy HH:mm">
</xctk:DateTimePicker>

我现在想做的是了解日期的变化。如果用户改变了日期,我就能在ViewModel中做一些事情。它必须在ViewModel中,而不是在代码后面。(我这样说是因为Event不是一个选项)。

我的想法是使用命令或触发器,但它不允许我(它不是一个选项)。有人能帮我一下吗?提前谢谢你。

这是一个使用CheckBox的例子,但对于DateTimePicker控件来说也是一样的:您需要添加如下引用:

xmlns:b="http://schemas.microsoft.com/xaml/behaviors"

然后你可以这样做:

<CheckBox IsChecked="{Binding IsChecked, Mode=TwoWay}"
Content="{Binding Path=Item.Description}">
<b:Interaction.Triggers>
<b:EventTrigger EventName="Checked">
<b:InvokeCommandAction
Command="{Binding DataContext.AddUserPermissionCommand, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListBox}}}"
CommandParameter="{Binding Path=Item.Id}" />
</b:EventTrigger>
<b:EventTrigger EventName="Unchecked">
<b:InvokeCommandAction
Command="{Binding DataContext.RemoveUserPermissionCommand, RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ListBox}}}"
CommandParameter="{Binding Path=Item.Id}" />
</b:EventTrigger>
</b:Interaction.Triggers>
</CheckBox>

你可以看到它挂钩到事件"Checked"在本例中,然后调用命令。因此,您可以对需要从

触发命令的任何控件和事件执行相同的操作。

相关内容

  • 没有找到相关文章

最新更新