我需要用 datagridview 替换 tablelayout

如何制作自动调整大小的 datagridview 而不将其添加到表单上。现在我的代码是tableLayout,但我需要将其替换为DataGridView


 for (int i = 0; i < dataManipulator.columnCheckedList.CheckedItems.Count; i++)

        {

   labels[i] = new Label();

            labels[i].Text = visibleColumns[i];


            tableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.AutoSize));

            tableLayoutPanel.SetCellPosition(labels[i], new TableLayoutPanelCellPosition(0, n++));

            tableLayoutPanel.Controls.Add(labels[i]);


            txtBox[i] = new TextBox();

            tableLayoutPanel.RowStyles.Add(new RowStyle(SizeType.AutoSize));

            tableLayoutPanel.SetCellPosition(txtBox[i], new TableLayoutPanelCellPosition(2, m++));

            tableLayoutPanel.Controls.Add(txtBox[i]);

            getSqlColumnTypes += $"'{labels[i].Text}'";

            SqlDataAdapter sqladapter = new SqlDataAdapter($"{getSqlColumnTypes}", loginForm.connection = new SqlConnection($"Server = {loginForm.serverName.Text }; Database = { loginForm.DBNames.SelectedItem}; Trusted_Connection = True"));

            DataSet dt = new DataSet();

            sqladapter.Fill(dt);

            labels[i] = new Label();

            labels[i].Text = dt.Tables[0].Rows[0][0].ToString();


            tableLayoutPanel.ColumnStyles.Add(new ColumnStyle(SizeType.AutoSize));

            tableLayoutPanel.SetCellPosition(labels[i], new TableLayoutPanelCellPosition(1, k++));

            tableLayoutPanel.Controls.Add(labels[i]);

       }


慕沐林林
浏览 94回答 1
1回答

UYOU

解决方案在这里:for (int i = 0; i < dataManipulator.columnCheckedList.CheckedItems.Count; i++)&nbsp; {&nbsp; &nbsp; &nbsp; &nbsp;addRecordDataGridView.Rows.Add(visibleColumns[i]);&nbsp; &nbsp; &nbsp; &nbsp;getSqlColumnTypes += $"'{visibleColumns[i]}'";&nbsp; &nbsp; &nbsp; &nbsp;SqlDataAdapter sqladapter = new SqlDataAdapter($"{getSqlColumnTypes}", loginForm.connection = new SqlConnection($"Server = {loginForm.serverName.Text }; Database = { loginForm.DBNames.SelectedItem}; Trusted_Connection = True"));&nbsp; &nbsp; &nbsp; &nbsp;DataSet dt = new DataSet();&nbsp; &nbsp; &nbsp; &nbsp;sqladapter.Fill(dt);&nbsp; &nbsp; &nbsp; &nbsp;addRecordDataGridView.Rows[i].Cells[1].Value = dt.Tables[0].Rows[0][0].ToString();&nbsp; &nbsp; &nbsp; &nbsp;addRecordDataGridView.Rows[i].Cells[2].Tag = new DataGridViewTextBoxColumn();&nbsp; &nbsp;}
打开App,查看更多内容
随时随地看视频慕课网APP