2014-01-24 64 views
0

嘿,我想提出的是持有的所有的字体名称列表我的系统上,但在开始的时候并没有持有任何价值,用户需要点击打开它,然后从列表中的项目组合框。我的问题是如何,如果没有已经被用户选择,而不是让错误设置为我的情况下,组合框(例如“宋体”)的默认值。如何设置comboBox的默认值?

 foreach (FontFamily fnt in fonts.Families) 
     { 

      comboBox1.Items.Add(fnt.Name); 

     } 
+1

使用comboBox1.SelectedIndex。 GIYF – Happy

+0

for循环后添加if(comboBox1.Items.Count> 0){comboBox1.SelectedItem = comboBox1.Items [0]; }' – Sameer

回答

0

你可以做一个值搜索例如“Arial”使用FindString

if (comboBox1.SelectedIndex == -1) 
    comboBox1.SelectedIndex = comboBox1.FindString("Arial"); 

如果你有开始“宋体”多个条目,上面会返回第一个匹配出发用宋体,所以你可能需要搜索完全匹配的字符串:

if (comboBox1.SelectedIndex == -1) 
    comboBox1.SelectedIndex = comboBox1.FindStringExact("Arial Rounded MT"); 
+0

我其实不想获得第一个值,但我只想得到'Arial'作为默认值。如果没有从comboBox中选择任何东西,我想将它设置为默认值。我是否需要使用任何'if'语句来检查项目是否已选择? – CowBoy

+0

是,检查'如果(comboBox1.SelectedIndex == -1)'来如果没有被选中测试。 –

+0

和我应该如何设置值,即'Arial'? – CowBoy

0

你可以这样做:

comboBox1.SelectedValue = "Arial"; 

(假设存在具有值= Arial字体的元素)