在我的程序中,我有一个DataGrid
是 UserControl 的一部分。我希望能够更改此网格中单元格的值,并将它们存储在数据模型中。这类似于标准数据绑定textBox
在 wpf 中的工作方式。
由esDataGrid
组成。TextBox
我可以更改单元格中的值,但它们在离开页面后消失。
用户控件 XAML:
<DataGrid ItemsSource="{Binding DataModel.Collection}" ... >
<DataGrid.Columns>
<DataGridTemplateColumn IsReadOnly="True">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBox Text="{Binding rowNum}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
.......
</DataGrid>
数据模型:
public class Data_Model : PropertyChangedBase
{
private string one = "One";
private string two = "Two";
private string three = "Three";
private string four = "Four";
private string a = "A";
private string b = "B";
private string c = "C";
private string d = "D";
private ObservableCollection<Class> _Collection;
public Data_Model()
{
Collection = new ObservableCollection<Class>();
Collection.Add(new Class() { rowNum = 0, input = one, output = a });
Collection.Add(new Class() { rowNum = 1, input = two, output = b});
Collection.Add(new Class() { rowNum = 2, input = three, output = c});
Collection.Add(new Class() { rowNum = 3, input = four, output = d});
}
public ObservableCollection<Class> Collection {...}
}
public class Class //Class for DataGrid values
{
public int rowNum { set; get; }
public string input { set; get; }
public string output { set; get; }
}
如何像通常那样将用户输入的值存储在这些单元格中(通过编写一个属性string
作为 中的文本textBox
)?