Я работаю над проектом и настолько избыточен, насколько это возможно - я пытаюсь сделать это полностью без кода.
У меня есть пользовательский элемент управления под названием MessagePanel, предназначенный для переноса сообщений, полученных черезTCP-соединение.
Сообщения могут быть только текстовыми или только изображениями, и мой элемент управления предназначен для работы с обоими шаблонами данных.
Шаблон для текстов:
<ItemsControl ItemsSource="{Binding Messages}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Name}"/>
<TextBlock Text="{Binding Text}"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Шаблон для изображений:
<ItemsControl ItemsSource="{Binding Messages}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel>
<Image Source="{Binding Image}"/>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
У меня возникла проблема с выяснением того, как инициировать использование любого из них на основе логического свойства IsImage
.
Iбыл бы признателен за любую помощь.