Привет. Я пытаюсь понять, как лучше всего использовать вложенные представления.
У меня есть представление «Атрибут», которое привязано к коллекции пар «имя-значение» в модели представления.Мне нужно повторно использовать это в различных местах в моем пользовательском интерфейсе.
У меня есть еще один «Просмотр условий», который имеет строковое свойство и коллекцию Dictionary (string, string).Я попытался создать текстовое поле и добавить элемент управления представлением атрибута в XAML
<StackPanel>
<StackPanel Orientation="Horizontal">
<Label Content="{x:Static l:StringResources.ConditionViewLabelText}" />
<TextBox Text="{Binding Type,Mode=TwoWay}" Width="100" />
</StackPanel>
<vw:AttributeView />
</StackPanel>
. Я хочу связать свойство привязки AttributeView со свойством коллекции словаря (строка, строка) родительской модели представления.,Какой лучший способ сделать это.Я не могу связать vw: AttributeView с ConditionViewModels?
Не могли бы вы сообщить мне наилучшую практику, чтобы сделать это?
- РЕДАКТИРОВАТЬ Пожалуйста, найдите мой AttributeView (Этокод xaml дочернего представления).Шаблон данных привязан к наблюдаемой коллекции в AttributeViewModel
<StackPanel>
<ItemsControl ItemsSource="{Binding AllAttributes}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBox Width="100" Text="{Binding Name, Mode=TwoWay}" Margin="5,0,5,0" />
<TextBox Width="100" Text="{Binding Value, Mode=TwoWay}" Margin="5,0,5,0" />
<TextBlock Width="100" Text="{Binding KeyValue, Mode=OneWay}" />
<Button Width="50" Content="{x:Static l:StringResources.AttributeViewButtonDeleteText}" Command="{Binding Path=DataContext.DeleteAttribute, ElementName=AttributeControl}" CommandParameter="{Binding Name}"></Button>
</StackPanel>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<Button Name="btnSomething" Content="{x:Static l:StringResources.AttributeViewButtonAddText}" Command="{Binding AddNewAttribute}" />
</StackPanel>
</Grid>