我的RadGridView
里面有一个RadDatePicker
我希望在该日期的任何更改中触发command
。
我正试图通过
实现这一目标<telerik:GridViewColumn Header="Date of Travel" >
<telerik:GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Path=FlightDetails.FltDate, StringFormat=dd-MMM-yyyy}">
</TextBlock>
</DataTemplate>
</telerik:GridViewColumn.CellTemplate>
<telerik:GridViewColumn.CellEditTemplate>
<DataTemplate>
<telerikControls:RadDatePicker SelectedDate="{Binding Path=FlightDetails.FltDate,UpdateSourceTrigger=LostFocus,Mode=TwoWay, StringFormat=dd-MMM-yyyy}" DisplayFormat="Short" Culture="en-AU">
<i:Interaction.Triggers>
<i:EventTrigger EventName="LostFocus">
<i:InvokeCommandAction Command="{Binding DataContext.DateOfFlightCommand, RelativeSource={RelativeSource AncestorType={x:Type baseview:QRUserControl}}}"
CommandParameter="{Binding}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</telerikControls:RadDatePicker>
</DataTemplate>
</telerik:GridViewColumn.CellEditTemplate>
</telerik:GridViewColumn>
什么都没有被触发。
答案 0 :(得分:0)
您的绑定可能无效。如果在父窗口的视图模型中定义了DateOfFlightCommand
属性,则应将Window
指定为AncestorType
:
<i:InvokeCommandAction Command="{Binding DataContext.DateOfFlightCommand,
RelativeSource={RelativeSource AncestorType={x:Type Window}}}" CommandParameter="{Binding}" />
但是,除非您包含所有相关的代码段,否则当然没有人可以知道您的类和属性是如何相关的。在提出另一个问题之前,您应该先阅读此内容:https://stackoverflow.com/help/mcve