2014-01-24 5 views
0

Привет, я делаю comboBox, который держит список всех имен шрифтов в моей системе, однако в начале он не имеет никакого значения, и пользователю нужно щелкнуть по нему, чтобы открыть его и выбрать элемент из списка. мой вопрос заключается в том, как установить значение по умолчанию для моего comboBox (например, «Arial») в случае, если пользователь не выбрал ничего, а не дал ошибку.Как установить значение по умолчанию для comboBox?

 foreach (FontFamily fnt in fonts.Families) 
     { 

      comboBox1.Items.Add(fnt.Name); 

     } 
+1

использование comboBox1.SelectedIndex. GIYF – Happy

+0

После цикла add 'if (comboBox1.Items.Count> 0) {comboBox1.SelectedItem = comboBox1.Items [0]; } ' – Sameer

ответ

0

Вы можете искать значение, например, «Arial» с помощью FindString:

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

Если у вас есть несколько записей, начиная с «Arial», то выше будет возвращать первый матч старт с Arial, так что вам может понадобиться для поиска точной строки:

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

На самом деле я не хочу получать первое значение, но я хочу получить только« Arial »в качестве значения по умолчанию. Я хочу установить его как значение по умолчанию, если в comboBox ничего не выбрано. мне нужно использовать любой оператор if, чтобы проверить, выбран ли элемент или нет? – CowBoy

+0

Да, установите флажок 'if (comboBox1.SelectedIndex == -1)' для проверки, если ничего не выбрано. –

+0

и как мне установить значение, например, «Arial»? – CowBoy

0

вы можете просто сделать:

comboBox1.SelectedValue = "Arial"; 

(при условии, существует элемент со значением = Arial)

Смежные вопросы