Csharp/C#教程:DataGrid – “双向绑定需要Path或XPath。”分享


DataGrid – “双向绑定需要Path或XPath。”

我想在DataGrid上显示我的对象数据库

public class Student { public string Imie { get; set; } public string Nazwisko { get; set; } string Numer { get; set; } internal List Telefony { get; set; } internal Adres Adres { get; set; } } 

AdresTelefon课程中,我显然有一些额外的领域。

我的XAML:

             

我可以很容易地设置ImieNazwiskoNumer字段但是当我试图设置Ulica的值( Adres类中的字段)编译器给我这个例外:

 InvalidOperationException was unhandled Two-way binding requires Path or XPath. 

感谢帮助。

我怀疑Adres绑定属性为null所以当您尝试编辑绑定Binding="{Binding Adres.Ulica}"的列值时,它会尝试为Adres.Ulica设置值,但Adres本身为null。 因此绑定在加载时无声地失败。

您必须确保为所有绑定对象初始化Adres,以便您可以从dataGrid编辑其子属性Ulica的值。

在您的视图模型中, TelefonyTelefony属性都声明为internal属性。 尝试将这些属性更改为public 。 检查绑定源类型

您可以绑定到公共属性 ,子属性以及索引器

你还提到过你可以让Numer工作但是在示例代码中它似乎被声明为private ,它不是有效的绑定源。

问题是由于绑定成员名称中的。(点)。 请参阅: 在C#/ WPF中绑定到包含DataTable中句点的字段

上述就是C#学习教程:DataGrid – “双向绑定需要Path或XPath。”分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/998743.html

(0)
上一篇 2021年12月27日
下一篇 2021年12月27日

精彩推荐