[英]C# datagrid edit cells MVVM
public DataView VariationGrid
{
get
{
if (_vargrid != null)
{
return _vargrid;
}
else
{
DataTable data = new DataTable();
#region Columns
foreach (var param in SelQuestion.QuestionParameters)
{
DataColumn datac = new DataColumn(param.Name);
data.Columns.Add(datac);
}
#endregion
#region Rows
foreach (Variation variation in SelQuestion.Variations)
{
DataRow datarow = data.NewRow();
foreach (var parameter in variation.QuestionParameters)
{
datarow[parameter.Key.Name] = parameter.Value;
}
data.Rows.Add(datarow);
}
#endregion
return data.DefaultView;
}
}
set
{
_vargrid = value;
RaisePropertyChanged("VariationGrid");
}
}
這就是我制作 DataGrid 的 ItemsSource 的方式......所以你可以看到每一行都是不同的變體,每一列都是 QuestionParameters。
這就是我將它綁定到我的 DataGrid 的方式:
<DataGrid SelectedIndex="{Binding Path=SelectedRow}" ItemsSource="{Binding Path=VariationGrid}" AutoGenerateColumns="True" Height="153" HorizontalAlignment="Left" Margin="12,12,0,0" Name="dataGrid3" VerticalAlignment="Top" Width="301" >
現在是我的問題:
當我編輯一個單元格時,它需要更改我選擇的變體的問題參數的值。 我該怎么做,因為我現在有想法......
您最好創建一個 object 圖形來將您的數據網格綁定到,然后讓該 object 圖形冒泡更改事件(通過 INotifyPropertyChanged),您可以在視圖 Z20F35E630DAF44DBFA4C3F68F593 中注意這些事件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.