Relaycommand mvvm を使用して Silverlight のデータグリッド内のボタンでトリガー イベントを使用する方法
選択した値を一部の Dto に取得できません。つまり、削除する行を選択すると、選択した項目のプロパティに NULL が表示されます。解決方法を教えてください。
Relaycommand mvvm を使用して Silverlight のデータグリッド内のボタンでトリガー イベントを使用する方法
選択した値を一部の Dto に取得できません。つまり、削除する行を選択すると、選択した項目のプロパティに NULL が表示されます。解決方法を教えてください。
データグリッドで以下のようなトリガー イベントを使用できます。
<Button Content="Message" Height="23" HorizontalAlignment="Left" Margin="234,116,0,0" Name="btnMsg" VerticalAlignment="Top" Width="75" >
<i:Interaction.Triggers>
<i:EventTrigger EventName="Click">
<si:CallDataMethod Method="HandleShowMessage"/>
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>
これには必要な参照を追加する必要があります。
selecteditem の場合、選択したアイテムをデータグリッドに設定する必要があり、他のものはビューモデルでプロパティを宣言する必要があります。
Xaml の場合:
<sdk:DataGrid Height="Auto" AutoGenerateColumns="False" ItemsSource="{Binding Emp}" SelectedItem="{Binding SelectedEMp,Mode=TwoWay}" BorderThickness="1" HorizontalAlignment="Left" Name="dataGrid1" VerticalAlignment="Top" Width="auto">
そしてViewmodelで:
private EmpInfo _selectedEMp;
public EmpInfo SelectedEMp
{
get { return _selectedEMp; }
set
{
_selectedEMp = value;
on("SelectedEMp");
}
}
ありがとう