【问题标题】:get Values in a template column in wpf data grid获取 wpf 数据网格中模板列中的值
【发布时间】:2015-07-11 16:39:07
【问题描述】:

在我的项目中,我有一个包含三个组合框模板列的数据网格,并且数据绑定到三个集合,这些列是可编辑的。网格绑定到一个可观察的集合,用于向网格添加新行,如MyCollection.add(new obj("","",""))。我尝试了foreach 方法来获取每一行中每个模板列中的值。但它不起作用。谁能建议我一种方法来循环并在包含模板列的数据网格中获取文本

【问题讨论】:

    标签: c# wpf wpfdatagrid datagridtemplatecolumn


    【解决方案1】:

    由于所有内容都是数据绑定的,因此最好的方法是迭代 MyCollection

    无论如何,DataGrid 的单元格内容实际上应该只是这些集合中数据的表示,并且它可以让您的 UI 层更薄。

    【讨论】:

    • 但值是空字符串
    • 如果您将组合框绑定到集合中这些对象的属性(这将是可行的方法),那么它们将不仅仅是空字符串。您希望组合框将其SelectedItemSelectedIndex 绑定到项目的属性。这样,这些项目就包含了您需要的所有信息。
    • 喜欢这个?SelectedItem="{Binding MainDataCollection[0].Question, Mode = TwoWay}" 或者你能告诉我怎么做
    • 更简单地说,SelectedIndex="{Binding ItemIndex}" 因为组合框的 DataContext 已经是该行所针对的项目。在 MainDataCollection 中的项目上添加一个名为 ItemIndex 的新 int 属性来存储值,您应该一切顺利。
    • 我还有一个问题,我已经发布了另一个问题,我已经发布了 xaml,你能看看它stackoverflow.com/questions/31361282/…
    猜你喜欢
    • 2017-11-16
    • 2017-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-16
    • 2013-09-28
    相关资源
    最近更新 更多