Как два ItemSources могут быть связаны с элементом ListBox? - PullRequest
0 голосов
/ 31 марта 2012

У меня есть регистр,

    public class dictLanguage
    {
        public string EnglishText { get; set; }
        public string FinnishText { get; set; }
    }

    IEnumerable<dictLanguage> result1 = from ....select new dictLanguage{ EnglishText=... };
    IEnumerable<dictLanguage> result2 = from ....select new dictLanguage{ FinnishText=... };

    LstBox.DataContext = result1

В Xaml у меня есть

<listbox ItemsSource="{Binding}">
  ...
  <TextBlock Text="{Binding EnglishText}">
  <TextBlock Text="{Binding FinnishText}">
  ...
</listbox>

Я читаю текст на английском языке из одного файла XML в «result1» и текст на финском языке из другого XMLфайл в "result2", но я могу установить только один ItemSource для ListBox.Я очень старался, но не могу найти никакого решения.Я хочу отобразить оба значения «dictLanguage», которые берутся из двух разных файлов XML.

В поисках ЛЮБОГО решения,

  • Либо я могу объединить result1 и result2
  • Или, одновременно считывать два XML-файла, которые Iamunable можно прочитать с помощью предложения "from ... select"
  • Или, Binding обоих, result1 и result2 в список
  • Или любое возможное и лучшее решение

Может кто-нибудь сказать мне решение, пожалуйста?- Спасибо!

Ответы [ 2 ]

1 голос
/ 31 марта 2012

Вы можете объединить два списка вместе, чтобы создать один источник предметов:

IEnumerable<dictLanguage> result1;
IEnumerable<dictLanguage> result2;
//populate collections....
IEnumerable<dictLanguage> allResults = result1.Union(result2);
0 голосов
/ 31 марта 2012

Вы не можете привязать два ItemSources к ListBox. Правильным и простым способом было бы объединить данные из двух файлов xml в один набор объектов (содержащий все переводы). Вы можете написать:

from englishText in xml1
from finnishText in xml2
select new DictLanguage() { EnglishText = englishText, FinnishText = finnishText };

Пожалуйста, прочитайте эту ссылку для получения дополнительной информации для объединения нескольких источников.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...