Найдите строку в выпадающем списке и покажите ее - PullRequest
0 голосов
/ 20 февраля 2012

Я думал, что это будет легко, но теперь я не знаю, как это сделать точно.В WPF-приложении я перехожу из одного окна в другое, щелкая элемент contextmenu.Мой конструктор для нового окна выглядит так:

    public Bearbeitung(int loginid, String art)

В окне есть флажок, заполненный списком.Я хочу, чтобы выбранный по умолчанию элемент в моем флажке был art.Хорошо, я проверил, есть ли строка в списке, но теперь я не знаю, как установить ее для выбранного элемента в выпадающем списке.

Как мне это сделать?

РЕДАКТИРОВАТЬ: Я уже пробовал

combobox.SelectedItem = art;

... это не работает!

РЕДАКТИРОВАТЬ2:

Вот код:

      List<String> feld = new List<string>();
      feld = agrep.GetFelder(loginid);
      foreach (String s in feld)
      {
          cbFeld.Items.Add(s);
      }
      if (cbFeld.Items.Contains(art))
       {
           MessageBox.Show("It contains it");
           cbFeld.SelectedItem = art;
       }

Окно сообщений не отображается!

Ответы [ 4 ]

2 голосов
/ 20 февраля 2012

Если элементы списка являются просто строками, вы можете просто сделать

myComboBox.SelectedItem = art;
0 голосов
/ 20 февраля 2012

Хорошо, я просто решаю это. Проблема заключалась в том, что когда я передаю строку в другое окно, добавляется пробел. Спасибо вам всем!

0 голосов
/ 20 февраля 2012

1001 * попробовать *

cbFeld.Text = art;

это должно работать.

0 голосов
/ 20 февраля 2012

Если ваш ComboBox содержит только строки , вы можете просто установить SelectedItem

cb.SelectedItem = art;

Если он содержит не только строкиВы можете изменить это, например,

cb.ItemsSource = new string[] { "Item 1", "Item 2" };

Если у вас есть сложные объекты, вы можете вместо них установить SelectedValue и SelectedValuePath.

...