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,您必须将所选项目设置为 datagrid,而其他您必须在 viewmodel 中标记属性:

在 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 回答