代码之家  ›  专栏  ›  技术社区  ›  Liam neesan

如何在winforms应用程序上使用C#代码将数据绑定到devexpress gridview?

  •  0
  • Liam neesan  · 技术社区  · 6 年前

    我是winforms的新手。我正在尝试调用存储过程并将其显示到devexpress gridview控件中

    这是我的代码我试过了

    //Header file
    using System.Data;
    using System.Data.SqlClient;
    using System.Configuration;
    
    
    
    public Form3()
        {
            InitializeComponent();
    
            //string cs = Properties.Settings.TestDatabaseConnectionString;
            var connectionString = ConfigurationManager.ConnectionStrings["TestDatabaseConnectionString"].ConnectionString;
    
            using (SqlConnection con = new SqlConnection())
            {
                con.ConnectionString = connectionString;
    
                SqlCommand cmd = new SqlCommand();
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.CommandText = "ReportStudentDetails";
                cmd.Connection = con;
    
                con.Open();
                SqlDataAdapter sda = new SqlDataAdapter(cmd);
                DataSet ds = new DataSet();
                sda.Fill(ds);
    
                gridControl1.DataSource = ds;
                gridControl1.DataBind(); // showing error
                con.Close();
    
            }
    
        }
    

    错误:

    GridControl1不包含数据绑定的定义

    1 回复  |  直到 6 年前
        1
  •  1
  •   Gosha_Fighten    6 年前

    这个 DataBind 方法特定于ASP。NET控件。在WinForms中,通过设置控件属性来跟踪所有内容。因此,没有必要使用 数据绑定

    然后,DataSet是不可绑定的对象。它包含此类对象的集合。它们是数据表。因此,有必要将DataSource属性设置为其中一个DataSet表。例如 gridControl1.DataSource = ds.Tables[0]; . 或者,如果已命名表, gridControl1.DataSource = ds.Tables['myTableName']; . 或者,您可以使用GridControl DataMember

    gridControl1.DataSource = ds;
    gridControl1.DataMember = "myTableName";