一千萬個為什麽

搜索

控制太多列表框(C#)

我有近200個列表框。我根據數據庫中的變量改變了它們的可見性。

所以我想,我準備了一個arraylist。喜歡這個

ListBox[] lbs = this.Controls.OfType().ToArray();

並像這樣使用。

for (int idx = 0; idx < Convert.ToInt32(ds.Tables[j].Rows[i][2])*12; idx++)
     lbs[idx].Visible = true;

此代碼將寫入comboboxchange。現在一切都好。但;

例;

我第一次改變組合框

1-20列表框visible = true

我又改變了組合框

不是1-20。 20,40改變:S怎麽可能,你能告訴我一個替代陣列列表類型,還是其他方式?

最佳答案

我不確定為什麽你一次需要200個列表框 - 你的客戶做了什麽讓你發瘋?

200個列表框是大量的列表框(這是一種禮貌的方式,說“太大了”)隨處可見,特別是如果(我懷疑)大多數列表框在任何時候都是不可見的。

看起來您已經擁有DataSet中這些列表框的數據(以表格形式)。最好將數據保留在該表單中,並且只根據程序需要創建並填充列表框。

換句話說,不是創建和填充200個列表框,而是在任何時候只能看到其中的一些列表框,最好只在需要時創建所需的列表框並在您處理時將其丟棄。完成(並且不要保留未使用的和不可見的)。

轉載註明原文: 控制太多列表框(C#)