【发布时间】:2015-10-08 07:16:21
【问题描述】:
我有使用 MVVM 架构编写的 WPF 应用程序,所以我有模型、视图和视图模型。我的视图中有一个DataGrid,其中包含Products 的列表(其中包含几个字段:名称、余额等)。
我想添加额外的窗口/视图,点击DataGrid 中的元素后会出现。是否可以?如果有,怎么做?
我对 xaml 代码感兴趣,而不是 button1_Click。
这就是我目前所拥有的:
<Window ...
Height="600" Width="800"
WindowState="Maximized">
<Grid>
<DataGrid AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserResizeRows="False"
IsReadOnly="True"
SelectionMode="Single"
SelectionUnit="FullRow"
ItemsSource="{Binding Path=Products}"
SelectedItem="{Binding Path=CurrentProduct, Mode=TwoWay}"
>
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Path=ProductName}"
Header="Product Name"
Width="*" />
<DataGridTextColumn Binding="{Binding Path=Balance}"
Header="Balance"
Width="Auto" />
...
</DataGrid.Columns>
</DataGrid>
</Grid>
【问题讨论】:
-
所以...您想调用一个命令,通过单击数据网格打开另一个视图,对吗?
-
@Kirenenko 欢迎所有想法。使用命令也可以。
-
您也可以查看DataGrid.RowDetailsTemplatel的本教程:wpftutorial.net/datagrid.html
-
@Ugur 是的,你说得对,RowDetailsTemplate 是非常有用的功能,可惜我在程序中无法使用。