2015-04-17 57 views
0

所以這可能是一個容易的,但我剛剛開始學習C#的微妙藝術,所以請原諒我,如果我遇到一個小'綠色'。列表框不顯示

我一直在試驗盒子。確切地說,列表框最近纔出現。在我的課,我有以下:

ListBox lb = new ListBox(); 

lb.Location = new System.Drawing.Point(12, 12); 
lb.Name = "ListBox1"; 
lb.Size = new System.Drawing.Size(245, 200); 
lb.BackColor = System.Drawing.Color.Blue; 
lb.ForeColor = System.Drawing.Color.Green; 

lb.Items.Add("Element One"); 
lb.Items.Add("Element Two"); 
lb.Items.Add("Element Two"); 

lb.Show(); 

現在,我已經假設下工作,作爲提示消息框做的ListBox會以某種方式工作。

我有一個:

var confirmResult = MessageBox.Show("Question asking about " + variable + "?", "TitleHere", MessageBoxButtons.YesNo); 

...我以爲列表框會工作很類似?

問題是,它沒有。

MessageBox彈出所有的榮耀,但列表框無處可見。

我錯過了什麼嗎?

UPDATE:

好了,所以Form是去他們說的方式。

我想:

ListBox lb = new ListBox(); 

lb.Location = new System.Drawing.Point(12, 12); 
lb.Name = "ListBox1"; 
lb.Size = new System.Drawing.Size(245, 200); 
lb.BackColor = System.Drawing.Color.Blue; 
lb.ForeColor = System.Drawing.Color.Green; 

lb.Items.Add("Element One"); 
lb.Items.Add("Element Two"); 
lb.Items.Add("Element Two"); 

Form f = new Form(); 
f.Controls.Add(lb); 

Buuut這仍然沒有顯示我的漂亮的盒子。

請指教。

+1

順便說一句,你也可以使用設計師。如果你想最初隱藏它:'lb.Visible = false;' –

回答

1

至於寫在微軟MSDN的message box

顯示一個消息框,可以包含文本,按鈕和符號 ,通知並指導用戶。

ListBox

表示Windows控件顯示項目的列表。

所以你不需要容器(如Form)來顯示一個messageBox,但是你需要一個控件,比如ListBox。

UPDATE:

你或許應該還添加類似:

form.ShowDialog(); 

除了列表框微軟的網頁,你也應該檢查出一個約Form class。如果您滾動到頁面的底部,它們會有簡潔的示例。

+0

這是它的配對,+1和一個很好的大接受你的答案! :) – ViRALiC

3

您需要將列表框添加到表單上的容器(例如面板或表單本身)。

例如

MyForm.Controls.Add(lb) 

panel1.Controls.Add(lb) 

你不需要做

lb.Show(); 
+0

@Tim Schmelter:謝謝。固定。 – Ulric

+0

謝謝! +1!你可以閱讀我的更新,也可以告訴我我的新錯誤是什麼?吮吸不得不留下一個新的問題而沒有解決方案。 – ViRALiC

+0

@ViRALiC:我強烈建議在表單設計師中設計表單。在代碼中創建和顯示錶單是很好的,但是在表單中放置/調整控件的大小(例如Listboxes)最好在設計器中完成。只需添加一個Windows表單,Visual Studio將爲您設置設計器。之後事情變得更加容易。 – Ulric