【问题标题】:data gridview binding error coming in wpf applicationwpf应用程序中出现数据gridview绑定错误
【发布时间】:2014-01-15 18:45:26
【问题描述】:

我是WPF应用程序的初学者,刚刚我在WPF allplication中启动了一个小应用程序

因为我有一个网格视图..在加载页面时我想将一些数据填充到网格视图..所以我在我的表单加载事件中给出了这样的代码:

Dim adapter As SqlDataAdapter
Dim dt1 As DataTabl
Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
  Dim con As SqlConnection = New SqlConnection("Data Source=SUPPORT2\SUPPORT2;Initial Catalog=Registry;Persist Security Info=True;User ID=sa;password=solutions")
        con.Open()
        Dim cd As SqlCommandBuilder = New SqlCommandBuilder(adapter)
        adapter = New SqlDataAdapter("select c.cid,c.CompanyName,d.dtId,d.dtName as Department,d.dtPhone as Phone,d.dtEmail as Email from CompanyMaster_tbl c join  DepartmentMaster_tbl d on c.Cid=d.cId order by cid", con)
        dt1 = New DataTable
        adapter.Fill(dt1) 'Filling dt with the information from the DB
        DataGrid1.ItemsSource = dt1

在运行代码时,我在这一行中遇到错误:DataGrid1.ItemsSource = dt1
错误: 无法将“System.Data.DataTable”类型的对象转换为“System.Collections.IEnumerable”类型。 请指导我如何在 WPF 应用程序中编写代码

【问题讨论】:

    标签: wpf wpfdatagrid


    【解决方案1】:

    试试这样:

    DataGrid1.ItemsSource = dt1.DefaultView;
    

    DefaultView 的类型为 DataView,它实现了 IEnumerable

    这是我用来测试的完整示例,是C#代码,希望你不要介意:

    DataTable table = new DataTable();
    table.Columns.Add("Col1 - int", typeof(int));
    table.Columns.Add("Col2 - string", typeof(string));
    
    table.Rows.Add(new object[] {1, "Smith"});
    table.Rows.Add(new object[] {2, "John"});
    
    grid.ItemsSource = table.DefaultView;
    

    这是 XAML 中的 DataGrid 声明:

    <DataGrid Name="grid" />
    

    【讨论】:

    • 是的先生,这是正确的,没有出现任何错误..但是我的数据网格没有显示任何内容。我必须提供更多代码吗?数据库有一些价值
    • @user3106114 嗯,这很奇怪。您正在使用 WPF 的 DataGrid 并且您确定 dt1 中有数据吗?这对我有用,试试我添加到上面答案的代码。它是 C# 代码,如果有问题我可以将其转换为 VB。
    • 先生,相同的 vb.net 代码在我的 vb.net 应用程序中运行良好。那么为什么在 WPF 应用程序中不起作用
    • 我必须对 WPF Datagrid 做任何事情
    • @user3106114 我真的不知道如何帮助你,除非我有更多的信息。就像我说的上面的代码对我有用。你试过我的例子吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-28
    • 1970-01-01
    • 1970-01-01
    • 2011-09-26
    • 2015-12-12
    • 1970-01-01
    • 2012-02-23
    相关资源
    最近更新 更多