【发布时间】:2013-11-27 23:54:56
【问题描述】:
我有一个绑定到ObservableCollection 的DataGrid,并使用MVVM 结构实现。我的问题是如何在 C# 中像这样实现的 DataGrid 中编辑单个单元格?
数据模型:
这是绑定到DataGrid 的ObservableCollection 的实现。
private ObservableCollection<IoData> _ioCollection;
public Data_Model()
{
IOCollection = new ObservableCollection<IoData>();
IOCollection.Add(new IoData() { rowNum = 0, input = _input0, output = _output0});
IOCollection.Add(new IoData() { rowNum = 1, input = _input1, output = _output1});
IOCollection.Add(new IoData() { rowNum = 2, input = _input2, output = _output2});
}
//**Update 1: showing my Collection's property**
public ObservableCollection<IoData> IOCollection
{
get { return _ioCollection; }
set
{
_ioCollection = value;
NotifyPropertyChange(() => IOCollection);
}
}
xaml:
<DataGrid ItemsSource="{Binding Data_Model.IOCollection}" ... />
我将通过我的 ViewModel 中的 Command 执行此操作。我是否只需替换包含单元格的行并添加正在更改的数据?我真的只是不确定如何使用由ObservableCollection 创建的DataGrid。
感谢您的帮助。
【问题讨论】:
-
如果你编辑你的 observable 集合中的项目,你在某种意义上是不是
editing individual cells? -
您不会在 WPF 中“编辑 UI”。如果你想修改你的数据,然后修改你的数据。
-
@HighCore 我知道。我只是不确定如何修改数据。
标签: c# wpf mvvm datagrid observablecollection