从外部将对象绘制到窗体

Drawing an object to a Form from outside

我是 C# 的新手,我尝试制作一个单独的 DBService class,我想从这个 class 中绘制我的 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);
        }
    }

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

当您创建一个新控件时,它将在添加到显示的窗体或显示在窗体内部的其他容器中之前不会显示。

我建议您使用窗体设计器将 DataGridView 实例添加到您的应用程序。然后,当您调用 initializeDataDisplay 例程时,您将引用传递给该设计器生成的实例并在例程内更新。