Как привязать тестовые данные к SketchFlow ComboBox? - PullRequest
3 голосов
/ 17 июля 2009

Мне не удалось успешно привязать некоторые тестовые данные к SketchFlow ComboBox. Я добавил пример источника данных и создал коллекцию с некоторыми базовыми строковыми значениями. В SketchFlow есть несколько руководств по привязке к ListBox, и это прекрасно работает, просто не найдя ничего для ComboBox.

Ответы [ 2 ]

3 голосов
/ 07 сентября 2009

Одна вещь, которая меня поразила несколько раз, - это то, что вам нужно поместить данные в «режиме списка», прежде чем перетаскивать их в элемент управления (поле со списком или список).

1 голос
/ 17 июля 2009

Кажется, все работает так, как я ожидал, поэтому, возможно, я не правильно понимаю вашу проблему, но я сделаю попытку! Я создал образец DataSource с парой строк в нем, добавил ComboBox в корень макета, а затем просто перетащил коллекцию из DataSource и поместил ее в ComboBox.

Помните, что если вы перетаскиваете сам DataSource, вы будете только устанавливать свойство DataContext ComboBox, и этого недостаточно для отображения ваших элементов. Вам также необходимо, чтобы ItemsSource был привязан к коллекции DataSource и ItemTemplate или DisplayMemberPath, чтобы сообщить ComboBox, как отображать ваши элементы.

Кроме того, если вы используете метод привязки методом перетаскивания, он будет использовать подход ItemTemplate для вас, который может быть или не быть тем, что вы хотите, так как он обычно создает StackPanel и отображает все поля строки в вашем Коллекция за элемент в ComboBox. Вы можете удалить ItemTemplate и установить DisplayMemberPath в любое поле, которое вы хотите отобразить из коллекции вашего источника данных.

...