输入一些内容后,DataGrid不允许我删除值

时间:2018-10-11 09:36:57

标签: c# wpf datagridview datatable

我有一个绑定到DataGrid的{​​{1}},当程序第一次启动时为空,如果用户要添加一个值,它将被写入相应的DataTable单元格中应该。

但是,如果用户是删除此值,则DataTable将不允许它,并且不会更新DataGrid,就像这样:

enter image description here

我似乎无法在网上找到与此相关的任何内容,并且不确定是与DataTable还是DataGrid有关,因此非常感谢您的帮助!谢谢!

2 个答案:

答案 0 :(得分:2)

您可以处理AutoGeneratingColumn事件,并将转换程序应用于绑定:

private static readonly ConvertStringToDBNull _converter = new ConvertStringToDBNull();
private void dgDt_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
    ((DataGridBoundColumn)e.Column).Binding = new Binding(e.PropertyName) { Converter = _converter };
}

您将找到一个在string.EmptyDBNull.Value here之间转换的转换器的示例实现。

答案 1 :(得分:0)

您必须将绑定设置为读写,将绑定模式设置为Mode = Twoway。