从外部将对象绘制到表单

时间:2015-03-03 21:45:33

标签: c# datagridview

我是C#的新手,我试图创建一个单独的 DBService 类,我想从这个类中绘制我的DataGridView。 但它并没有出现。

 public static void initializeDataDisplay()
    {
        try
        {
            string selectAll = @"SELECT * FROM Products;";
            MySqlDataAdapter dataAdapter = new MySqlDataAdapter(selectAll, DBService.conn);
            DataSet ds = new DataSet();
            dataAdapter.Fill(ds);
            DataGridView dgvAdmin = new DataGridView();
            dgvAdmin.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
            dgvAdmin.Location = new System.Drawing.Point(29, 12);
            dgvAdmin.Size = new System.Drawing.Size(552, 245);
            dgvAdmin.TabIndex = 0;
            dgvAdmin.DataSource = ds.Tables[0];

        }
        catch (Exception exc)
        {
            MessageBox.Show(exc.Message);
        }
    }

连接有效,在我想要分离数据库服务之前一切正常。我没有任何例外。

1 个答案:

答案 0 :(得分:0)

创建新控件时,在将其添加到显示的Form或在Form中显示的其他容器之前,它不会显示。

我建议您使用表单设计器向应用程序添加DataGridView实例。然后,当您调用initializeDataDisplay例程时,您将传递对此设计器生成的实例的引用并在例程内更新。