0
我在使用MVVM Lite EventToCommand在數據網格內的複選框組件上使用時遇到了問題。 EventToCommand不起作用,動作從不會觸發。在數據網格內的組件上使用EventToCommand
不只是在複選框組件,我嘗試在DataGrid內的另一個組件使用EventToComment。它也不起作用。
是否有可能在DataGrid中的組件使用EventToCommand?如果有可能,那麼如何實施呢?
這裏是代碼..
XAML:
<sdk:DataGrid Name="dgSubmitProposal"
ItemsSource="{Binding Path=PeopleVM}"
SelectedItem="{Binding SelectedRateChange, Mode=TwoWay}"
FrozenColumnCount="{Binding FrozenColumnCount}"
TabNavigation="Cycle"
AutoGenerateColumns="False"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
VirtualizingStackPanel.VirtualizationMode="Standard"
ClipboardCopyMode="None">
<sdk:DataGrid.Columns>
<sdk:DataGridTemplateColumn Header="Select">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox Name="chbSelect" IsChecked="{Binding IsChecked, Mode=TwoWay}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<cmd:EventToCommand Command="{Binding RowCheckCommand}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</CheckBox>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
<sdk:DataGridTextColumn Header="Name" Binding="{Binding Name, Mode=TwoWay}" IsReadOnly="True" />
<sdk:DataGridTextColumn Header="Age" Binding="{Binding Age, Mode=TwoWay}" IsReadOnly="True"/>
</sdk:DataGrid.Columns>
</sdk:DataGrid>
視圖模型類:
public RelayCommand RowCheckCommand
{
get;
private set;
}
public MainViewModel()
{
RowCheckCommand = new RelayCommand(() => MessageBox.Show("A checkbox in a datagrid Clicked!"));
}
對不起我的錯誤,它假設是「RowCheckCommand」。它不起作用 – micromonster 2011-02-01 12:47:16