Я новичок в MVVM. У меня есть основной проект «MVVM Demo», который включает файл mainwindow.xaml, в котором есть мой основной интерфейс. У меня есть список, в котором есть набор элементов:
<ListBox Name="ButtonPanel" ItemsSource="{Binding BoardTabs}" SelectedItem="{Binding SelectedTab, Mode=TwoWay}" >
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Connect}" >
</TextBlock>
<TextBlock Text="{Binding I2C}" >
</TextBlock>
<TextBlock Text="{Binding Voltage}" >
</TextBlock>
<TextBlock Text="{Binding Clock}" >
</TextBlock>
<TextBlock Text="{Binding Codec}" >
</TextBlock>
<TextBlock Text="{Binding EEPROM}" >
</TextBlock>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Мне нужно, чтобы каждый элемент списка открывал новый пользовательский элемент управления соответственно. Имейте в виду, что я создал отдельные пользовательские элементы управления вне основного проекта (второй проект в моем файле решения) и добавил его в качестве ссылки на основной проект (управление платой mvvm)
Voltage - это один из элементов userControl, у которого есть файл Voltage.xaml, в котором находится мой пользовательский интерфейс, который имеет отдельный вид, модель и класс модели представления. Оно внезапно появляется в новом окне в тот момент, когда я щелкаю элемент напряжения (текстовый блок внутри списка) в моем MainWindow.xaml, который находится в проекте Board Control MVVM.
вот мой класс модели ProductView, который выбирает вкладку из пользовательского интерфейса mainwindow.xaml:
private Product m_SelectedTab;
public Product SelectedTab
{
get
{
return m_SelectedTab;
}
set
{
m_SelectedTab = value;
NotifyPropertyChanged("SelectedTab");
}
}
Я хочу знать, когда я выбираю элемент в Listbox (mainwindow.xaml), всплывает окно с пользовательским интерфейсом Voltage.xaml, указанным выше. Если вам нужен дополнительный код для четкого описания, я бы с удовольствием загрузил его сюда.
ПОЖАЛУЙСТА ПОМОГИ :(