c# - WPF 新手 - 如何将整个 Binding 对象存储在 DataGrid 的行中?

标签 c# wpf

我是 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/

相关文章:

asp.net - App.Config 和 Web.Config 之间的区别?

.net - 揭开依赖属性的神秘面纱

c# - 如何在 VS2010 中从另一个 DLL 调试一个 DLL

c# - 如何在 StreamSocket 的 ConnectAsync() 上设置超时值?

c# - 需要在 Windows 服务器上创建 bat 文件以从文件夹中移动旧(60 天)文件

c# - Blazor Server 如何跨多个选项卡和刷新保留数据

c# - 诊断 .NET 遗留问题

c# - 在 Xaml 中为 VisualStateManager 指定命名空间时出现问题

wpf - 带有动态文本和文本颜色更新的进度条

c# - WPF 应用程序框架 (WAF) 教程链接/快速入门视频链接