2014-05-19 21 views
0

選擇Excel文件時。我爲每個Excel表格名稱生成了新的選項卡。在每個選項卡上,我還生成了一個新的dataGridView。如何自動設置新的dataGridView的尺寸,而無需在設計視圖中進行物理單擊和拖動?這段代碼提供了從excel文件中獲取我的表名,使用這些名稱創建我的新選項卡,併爲每個選項卡創建dataGridViews ...只需要使dgv的大小更大。設置在新選項卡上生成的dataGrid的大小

foreach (DataRow row in dt1.Rows) 
     { 
      string name = row["TABLE_NAME"].ToString(); 
      var tabPage = new TabPage(name); 
      DataGridView grid = new DataGridView(); 

      tabPage.Controls.Add(grid); 
      comboBox1.Items.Add(name); 
      tabControl2.TabPages.Add(tabPage); 
     } 

回答

0

如果你只是想在DataGridView佔用全部可用空間,可以初始化的DataGridView的Dock屬性與DockStyle.Fill:

foreach (DataRow row in dt1.Rows) 
{ 
    string name = row["TABLE_NAME"].ToString(); 
    var tabPage = new TabPage(name); 
    DataGridView grid = new DataGridView { 
     Dock = DockStyle.Fill 
    }; 

    tabPage.Controls.Add(grid); 
    comboBox1.Items.Add(name); 
    tabControl2.TabPages.Add(tabPage); 
} 

設置DockStyle.Fill確保在DataGridView的邊緣碼頭其包含控件的邊緣並且尺寸合適。

或者你可以選擇設置的位置和大小自己:

grid.Location = new Point(500, 500); 
gird.Size = new Size(500, 500); 
相關問題