我是 WPF 新手,因此可能有一个简单的答案,但对我来说并不明显。
网格显然代表了我的已配置端口对象的集合。我想存储已配置的端口对象(即每行的绑定(bind)),以便在单击网格单元格时将其传递到 MVVM 链中的下一个 UserControl。
我确实找到了this SO question ,但评论部分正是我所缺少的。
提前致谢,我确信有一个简单的解决方案。
最佳答案
我会使用这个(除了最里面的xaml之外的所有内容都是从您链接到的其他SO帖子中获取的:
<DataGrid ItemsSource="{Binding}" AutoGenerateColumns="False" >
<DataGrid.Columns>
<DataGridTemplateColumn Header="Custom Column">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Tag="{Binding}" Content="Click Me" Click="Button_ClickHandler"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridtemplateColumn>
</DataGrid.Columns>
</DataGrid>
然后是点击处理程序的来源:
private void Button_ClickHandler(object sender, EventArgs e)
{
var clickedConfiguredPort = ((FrameworkElement)sender).Tag as ConfiguredPort;
DoStuff(clickedConfiguredPort);
}
关于c# - WPF 新手 - 如何将整个 Binding 对象存储在 DataGrid 的行中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6735290/