【问题标题】:how do i display a DataTable in a wpf window c#?如何在 wpf 窗口 c# 中显示 DataTable?
【发布时间】:2019-02-20 02:22:50
【问题描述】:

我似乎无法在这里或谷歌找到明确的解决方案。

我基本上有一个数据表,我根据数据添加了行 根据我的需要,我想在 wpf 窗口中将其显示为表格。

有什么想法吗? 提前致谢。

我试过这个,但我得到了这个异常:“System.NullReferenceException:'对象引用未设置为对象的实例。' ListViewData 为空。"

这是方法,内部是 DataTable 的创建:

private void ShowAllPlayersbutton_Click(object sender, RoutedEventArgs e)
    {
        AllPlayersTable = new DataTable("test");
        AllPlayersTable.Columns.Add("Played games",typeof(int));
        AllPlayersTable.Columns.Add("Wins", typeof(int));
        AllPlayersTable.Columns.Add("Losses", typeof(int));
        AllPlayersTable.Columns.Add("Ties", typeof(int));
        AllPlayersTable.Columns.Add("Wins precentage",typeof(int));

        MsServiceClient proxy = new MsServiceClient(new InstanceContext(Callback));
        UserD[] usersArr = proxy.GetAllUsers();

        foreach(UserD uD in usersArr)
        {
            AllPlayersTable.Rows.Add(uD.PlayedGames, uD.Wins, uD.Losts, uD.Ties, uD.VictoryPercent);
        }

        DisplayUsersWindow displayWindow = new DisplayUsersWindow(AllPlayersTable);
        displayWindow.Show();

    }

这是窗口的:

    public partial class DisplayUsersWindow : Window
{
    public DisplayUsersWindow()
    {
        InitializeComponent();
    }

    public DataTable Datas { get; set; }
    public DisplayUsersWindow(DataTable dataTable)
    {
        Datas = dataTable;
        ListViewData.ItemsSource = Datas.DefaultView;//<<<< exception happens here

    }

}

}

【问题讨论】:

  • InitilaizeComponent() 方法在哪里

标签: c# wpf service datatable


【解决方案1】:

发生 NullReferenceException 是因为您没有在使用 DataTable 的构造函数中初始化窗口,这意味着 ListViewData 未设置为对象。要修复它,只需添加对 InitializeComponent() 的调用:

public DisplayUsersWindow(DataTable dataTable)
{
    InitializeComponent();
    Datas = dataTable;
    ListViewData.ItemsSource = Datas.DefaultView;
}

【讨论】:

    猜你喜欢
    • 2018-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多