none
Как получить значения всех ComboBox зная имя WrapPanel в которой они лежат. RRS feed

  • Вопрос

  • Здравствуйте. Подскажите пожалуйста такую вещь? У меня есть класс ViewManager он на входе получает имя контрола WrapPanel. Этот wrappanel расширяется горизонтально при добавлении туда новых контролов. 

    Я динамически создаю внутри этого контрола дополнительные  wrappanel которые расширяются вертикально. В каждый из этих динамически добавляемых  wrappanel  я добавляю по три комбобокса. для них биндю список значений. И вот у меня задача : как мне получить доступ к к каждому combox с целью проверить какое значение в этом combobox выбрал пользователь ???

    9 апреля 2014 г. 2:46

Ответы

  • У WrapPanel есть свойство Children вам надо в цикле просмотреть что находится в этой коллекции, найти дочерние WrapPanel и с ними поступить так же, но уже искать ComboBox. как вариант можно сделать так

    wrappanel.Children.OfType<WrapPanel>.SelectMany(t=>t.Children).OfType<ComboBox>

    • Изменено Brash_O 9 апреля 2014 г. 5:32
    • Предложено в качестве ответа alexkr.net 9 апреля 2014 г. 7:14
    • Помечено в качестве ответа Timur2008 9 апреля 2014 г. 10:09
    9 апреля 2014 г. 5:28

Все ответы

  • У WrapPanel есть свойство Children вам надо в цикле просмотреть что находится в этой коллекции, найти дочерние WrapPanel и с ними поступить так же, но уже искать ComboBox. как вариант можно сделать так

    wrappanel.Children.OfType<WrapPanel>.SelectMany(t=>t.Children).OfType<ComboBox>

    • Изменено Brash_O 9 апреля 2014 г. 5:32
    • Предложено в качестве ответа alexkr.net 9 апреля 2014 г. 7:14
    • Помечено в качестве ответа Timur2008 9 апреля 2014 г. 10:09
    9 апреля 2014 г. 5:28
  • Чтото не так делаю :((( выдает ошибку 

    Ошибка 1 Аргументы-типы для метода "System.Linq.Enumerable.SelectMany<TSource,TResult>(System.Collections.Generic.IEnumerable<TSource>, System.Func<TSource,int,System.Collections.Generic.IEnumerable<TResult>>)" не должны определяться по использованию. Попытайтесь явно определить аргументы-типы.

    Как можно переписать это выражение SelectMany чтобы он не выдавал ошибку ?:(

    10 апреля 2014 г. 7:01