【问题标题】:Access DataGrid Cell value访问 DataGrid 单元格值
【发布时间】:2013-09-19 05:02:36
【问题描述】:

我在 DataGrid 中有一个 A、B、C 列(简化)。此 DataGrid 绑定到 DataTable 并且 C 列值是 A 和 B 的差异,即( A - B )。 A 列和 B 列是可编辑的。现在我的要求是,当用户更改 A 或 B 的值时,应相应地更新列 C 的值。为此,我编写了 CellEditEnding 事件。在这种情况下,我能够获得该行,但不能获得用户刚刚修改的值。如果我从 DataTable 中得到对应的值,我得到的是旧值,即用户修改之前的值。

【问题讨论】:

    标签: wpf vb.net datagrid


    【解决方案1】:

    尝试在您的 CellEndEditing 事件中使用以下代码

    ((TextBox)e.EditingElement).Text
    

    或者

    ContentPresenter contentPresenter = e.EditingElement as ContentPresenter;
            DataTemplate editingTemplate = contentPresenter.ContentTemplate;
            TextBox txtMyTextBox = editingTemplate.FindName("textbox1", contentPresenter) as TextBox;
            string newValue = txtMyTextBox.Text;
    

    【讨论】:

    • 它不起作用,e.EditingElement 的类型是 ContentPresenter 而不是 TextBox,所以我无法提取文本
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-28
    • 1970-01-01
    • 2011-01-06
    • 1970-01-01
    • 2015-08-14
    • 2016-09-01
    相关资源
    最近更新 更多