0

Relaycommand mvvm を使用して Silverlight のデータグリッド内のボタンでトリガー イベントを使用する方法

選択した値を一部の Dto に取得できません。つまり、削除する行を選択すると、選択した項目のプロパティに NULL が表示されます。解決方法を教えてください。

4

1 に答える 1

0

データグリッドで以下のようなトリガー イベントを使用できます。

 <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");
        }
    }

ありがとう

于 2012-09-19T08:21:59.183 に答える