2015-12-22 3 views
1

У меня проблема при привязке ItemsSource на ListView к объекту. я связать свою ListView с ViewModel свойством:change itemsource binding property mvvm

<ListView ItemsSource="{Binding itemgrid, Source={StaticResource viewmodel}}"> 
     <ListView.ItemTemplate> 
      <DataTemplate> 
       <local:UCListFormat></local:UCListFormat> 
      </DataTemplate> 
     </ListView.ItemTemplate> 
</ListView> 

У меня есть 2 модели,

  • 1 itemmodel

  • 2 personmodel

У меня также есть меню который открывает 1 вид с именем 'form', но будет генерировать ListView на основе имени меню.

Например:

меню человека

  • открытой 'форме' и порождают ListView с ObservableCollection<person>

пункт меню

  • открытой 'форме' и порождают ListView с ObservableCollection<item>

на ListView Заявляю itemgrid, как ObservableCollection<object>

Потом залейте его itemgrid=ObservableCollection<person> или если из пункта меню. Я заполняю itemgrid itemgrid=ObservableCollection<item> база на имущество.

Как я могу это сделать? Потому что он не работает, если itemgrid is ObservableCollection<object>,

Если я изменяю itemgrid=ObservableCollection<person>, я могу отображать только 1 во время выполнения.

на коде позади, я могу это сделать, как этот

if (menu=="person") 
{listview.itemsource=ObservableCollection<person>} 
else 
{listview.itemsource=ObservableCollection<item>} 

на XAML, я не знаю, как это сделать

+0

Непонятно, что вы спрашиваете, можете ли вы еще немного кода? – bit

+0

sory, можно посмотреть на это снова. Я расскажу подробнее о своей проблеме ... thx – RIP

ответ

0

Вы можете удалить явную ListViewDataTemplate, и объявить DataTemplates в ваших ресурсов где-то сообщить WPF, как отображать различные виртуальные машины

<DataTemplate DataType="{x:Type vm:Person}"> 
    <view:PersonView /> 
</DataTemplate> 

<DataTemplate DataType="{x:Type vm:Item}"> 
    <view:ItemView /> 
</DataTemplate> 
+0

Извините, я действительно не понимаю. на datatemplate я планирую использовать селектор itemtemplate для динамического изменения привязки столбцов. , но у меня проблема с привязкой к источнику данных, так как она может принять 2 модели – RIP