c# - 数据网格 - "Two-way binding requires Path or XPath."

标签 c# wpf xpath datagrid

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

public class Student
{
public string Imie { get; set; }
public string Nazwisko { get; set; }
string Numer { get; set; }

internal List<Telefon> Telefony { get; set; }
internal Adres Adres { get; set; }
}

地址 电话 类我显然有一些额外的领域。

我的 XAML:
<DataGrid Name="dataGrid" ItemsSource="{Binding Student}" AutoGenerateColumns="False" CellEditEnding="dataGrid_CellEditEnding" CurrentCellChanged="dataGrid_CurrentCellChanged" PreviewKeyDown="dataGrid_PreviewKeyDown">
        <DataGrid.Columns>
            <DataGridTextColumn Header="Imie"        Binding="{Binding Imie}"/>
            <DataGridTextColumn Header="Nazwisko"    Binding="{Binding Nazwisko}"/>
            <DataGridTextColumn Header="Numer"       Binding="{Binding Numer}"/>
            <DataGridTextColumn Header="Ulica"       Binding="{Binding Adres.Ulica}"/>
            <DataGridTextColumn Header="KodPocztowy"       Binding="{Binding  Adres.KodPocztowy}"/>
            <DataGridTextColumn Header="Miasto"       Binding="{Binding Adres.Miasto}"/>
            <DataGridTextColumn Header="Tel. Numer"       Binding="{Binding Telefon.Numer}"/>
            <DataGridTextColumn Header="Tel. Operator"       Binding="{Binding Telefon.Operator}"/>
        </DataGrid.Columns>
    </DataGrid>

我可以轻松获取和设置爱美 , 纳兹维斯科号码 字段,但是当我尝试设置 的值时乌利卡 ( Adres 类中的字段)编译器给了我这个异常:
InvalidOperationException was unhandled
Two-way binding requires Path or XPath.

感谢帮助。

最佳答案

我怀疑 Adres绑定(bind)属性为空 因此,当您尝试编辑绑定(bind)的列值时 Binding="{Binding Adres.Ulica}" ,它尝试为 Adres.Ulica 设置值,但 Adres 本身为空。因此,绑定(bind)在加载时静默失败。

您必须 确保 Adres为所有绑定(bind)对象初始化 这样您就可以编辑其子属性的值 Ulica来自数据网格。

关于c# - 数据网格 - "Two-way binding requires Path or XPath.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22595101/

相关文章:

c# - Azure SQL 数据库连接问题 - 连接太多?

c# - 可以在selenium c#中更改浏览器的标题吗?

WPF - 颜色动画完成事件

wpf - 如何更改 GroupBox 的标题背景?

python - scrapy list return:如何处理/提取列表的每个元素?

python - 问题: Getting to the element by using CSS selectors attribute 'style' with selenium

C# Linq 有四个表和一个并不总是需要的外键

.net - 不同类型的用户控件的 WPF 列表

xpath - 如何在 Odoo 中使用 xpath 替换第二个具有相同名称的按钮

c# - 将类添加到当前程序集中