我正在编写WPF应用程序,即使用MVVMLight.我有一个DataGrid,我想连接选择行命令的事件.这很容易.硬(当然对我而言)部分是获取与所选行连接的实体.我怎样才能做到这一点?
你有很多方法可以做到这一点.
第一个是将所选行作为命令参数传递.您可以通过XAML或代码隐藏来完成此操作.
<GridView x:Name="gv">
<i:Interaction.Triggers>
<i:EventTrigger EventName="SelectionChanged">
<i:InvokeCommandAction Command="{Binding SelectedRowCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=gv}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</GridView>
Run Code Online (Sandbox Code Playgroud)
您还可以在视图模型中创建选定的项属性,并将其绑定到控件.
<GridView x:Name="gv" SelectedItem="{Binding SelectedRow, Mode=TwoWay}">
</GridView>
Run Code Online (Sandbox Code Playgroud)
public class MyViewModel
{
public RowType SelectedRow
{
get { return _selectedRow; }
set
{
_selectedRow = value;
// selection changed, do something here
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2528 次 |
| 最近记录: |