[英]How to get a value from a combobox c#?
我是C#的新手,所以請耐心等待...
好的,因此您右鍵單擊comboBox,選擇編輯項,然后可以將字符串添加到comboBox。 我的問題是,如何為這些字符串設置值? 我想使用“ if”語句來說明當前是否選擇了某個字符串。
所以我有5個comboBoxes。 選中復選框后,所有的人都會說“滿”。 如果這些值之一更改為其他值,那么我希望選中另一個復選框。 但是由於comboBoxes中的字符串沒有值,所以我不知道如何使用它們。
重申一下,如何為comboBoxes中的字符串設置值,以便可以在“ if”語句中使用它們。
編輯:這是Windows窗體。
好吧,最簡單的方法:
Combobox.Items.Add("New string");
更為復雜的方法是創建一個數組或字符串列表,並將它們全部一次添加為數據源:
var listOfStrings = new List<string>();
Combobox.Datasource = listOfStrings;
無論選擇哪種方式,都將編輯ComboBox項目的集合。
PS那是Winforms的。
檢查文本的Text
屬性。
假設您的ComboBox位於cmb [5]中,並且您的復選框為chk:
private ComboBox[] cmb;
private void init()
{
cmb = new ComboBox[5];
for (int i = 0; i < 5; i++)
{
ComboBox c = new ComboBox();
Controls.Add(c);
// TODO: Populate c with the relevant data
c.TextChanged += new EventHandler(c_TextChanged);
}
chk.CheckedChanged += new EventHandler(chk_CheckedChanged);
}
void chk_CheckedChanged(object sender, EventArgs e)
{
foreach (ComboBox c in cmb)
c.Text = "Full";
}
void c_TextChanged(object sender, EventArgs e)
{
foreach (ComboBox c in cmb)
{
if (c.Text != "Full") return;
}
chk.Checked = false;
}
另外,init可以是:
private void init()
{
cmb = new ComboBox[5];
cmb[0] = comboBox1;
cmb[1] = comboBox2;
cmb[2] = comboBox3;
cmb[3] = comboBox4;
cmb[4] = comboBox5;
foreach (ComboBox c in cmb)
c.TextChanged += new EventHandler(c_TextChanged);
chk.CheckedChanged += new EventHandler(chk_CheckedChanged);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.