0

我有一个 Datagrid ,其中有 3 列,两列的值是从数据库中获取并填充的,而第三列是用户输入值的文本框。我必须将此值保存到数据库中。我在这里遇到了一些问题。当我在 UI 中输入值时,它在后台代码中显示为 null ..我做错了什么?

   <DataGrid AutoGenerateColumns="False" Height="233" Name="dataGrid1" Width="360" > 
   <DataGrid.Columns>

     <DataGridTextColumn Header="x" Binding="{Binding Path=x}" Width="120" IsReadOnly="True" />
   <DataGridTextColumn Header="y" Binding="{Binding Path=y}" Width="120"  IsReadOnly="True"/>
    <DataGridTextColumn Header="Value/Ref" Width="120" Binding="{Binding Path=z, Mode=TwoWay}"  IsReadOnly="False" />

     </DataGrid.Columns>

我有一个包含变量 x,y,z 的类。我正在创建类列表并尝试将值添加到类中

4

1 回答 1

0

使用您的 XAML 代码和这个简单的代码片段,行为就像您想要的那样(我理解):

class A
    {
        private string _x, _y, _z;

        public string x { get { return _x; } set { _x = value; } }
        public string y { get { return _y; } set { _y = value; } }
        public string z { get { return _z; } set { _z = value; } }
    }

public partial class MainWindow : Window
    {
        private List<A> myData;

        public MainWindow()
        {
            InitializeComponent();

            myData = new List<A>();
            myData.Add(new A() { x = "x1", y = "y1" });
            myData.Add(new A() { x = "x2", y = "y2" });
            myData.Add(new A() { x = "x3", y = "y3" });

            dataGrid1.ItemsSource = myData;
        }
    }

如果你在 Value/Ref 列中输入任何数据,后面的 List 肯定会更新。

于 2013-08-16T11:39:16.453 回答