2012-08-04 56 views
0

我正在使用製表符控件,並在其中插入了一個列表視圖。 現在我想運行我的程序時生成選項卡,每個選項卡應包含此列表視圖。如何在運行時生成的製表符中添加控件

我想是這樣的:

public void FillTabControls(TabControl tb, string sSQL, string sTable, string sFirstItem) 
{ 
    long totalRow = 0; 
    //Set the Data Adapter 
    OleDbDataAdapter da = new OleDbDataAdapter(sSQL, CN); 
    DataSet ds = new DataSet(); 
    da.Fill(ds, sTable); 

    totalRow = ds.Tables[sTable].Rows.Count - 1; 

    tb.TabPages.Clear(); 
    if (sFirstItem != "") tb.TabPages.Add(new TabPage(sFirstItem)); 
    for (int i = 0; i <= totalRow; i++) 
     tb.TabPages.Add(new TabPage("" + ds.Tables[sTable].Rows[i].ItemArray.GetValue(0).ToString())); 
    if (tb.TabPages.Count > 0) 
     tb.SelectedIndex = 0; 
} 

,但我沒有得到這個想法要做到這一點

回答

0

我覺得是越來越添加的標籤頁。但我不知道你在哪裏添加列表視圖。我猜是因爲你無法在視覺上識別它。

另外設置內的被添加的for循環的大小或標籤頁的船塢

0
private IEnumerable<TabPage> GetTabPages(string sSQL, string sTable, string sFirstItem) 
    { 
     // generate your tabs here 
    } 

    private void Init(TabControl tb, string sSQL, string sTable, string sFirstItem) 
    { 
     tb.SuspendLayout(); 

     foreach (TabPage tabPage in GetTabPages(sSQL, sTable, sFirstItem)) 
     { 
      tb.Controls.Add(tabPage); 
     } 

     tb.ResumeLayout(); 
    } 
相關問題