2016-04-28 109 views
0

使用.Net 4.6。
我有一个DataGridTextColumn绑定到decimal?属性。 (我需要link的帮助才能使它工作。)
是否可以允许用户输入任何值?也就是说,用户将选择该单元并删除其中的任何内容。
在我们的应用程序中,当用户在删除内容后离开单元格时,绑定属性不会更新。
感谢任何见解 -带有十进制值的DatagridTextColumn,不允许输入

更新:

var dataGridTextColumn = new DataGridTextColumn(); 
string bindingPath = $"{descr.BindingPropertyName}"; 
Binding b = new Binding(bindingPath); 
b.Mode = readOnly ? BindingMode.OneWay : BindingMode.TwoWay; 
// Accordng to some articles on StackOverflow, binding as UpdatePropertyChanged 
// prevents the editing of decimal and decimal? values. 
// With UpdateSourceTrigger.LostFocus, it appears to work as desired. 
b.UpdateSourceTrigger = UpdateSourceTrigger.LostFocus; 
dataGridTextColumn.Binding = b; 

根据需要,除了当绑定属性是小数列的作品? (也可能是其他类型)用户不能将单元格留空。

+0

你能显示代码? – ChrisF

回答

0

你应该在VM定义为空的属性(小数点?),并在绑定指定TargetNullValue(“”),例如:

b.TargetNullValue = string.Empty; 
+0

这就是我正在寻找的,谢谢。 – Number8