Вкратце: я хочу определить, какой элемент XML ButtonSettings использовать для XAML-Button, и использовать дочерние элементы выбранного элемента ButtonSettings в стиле, применяемом к этой кнопке.Привязка к указанному XML-элементу
Возможно ли это?
Образец XML:
<Buttons>
<ButtonSettings ID="Bye">
<Text lang="NL">Doei!</Text>
<Text lang="DE">Tsusch!</Text>
<Text lang="FR">Bonjour</Text>
<Text lang="EN">CU</Text>
<Image>D:\bye.PNG</Image>
</ButtonSettings>
</Buttons>
Для каждой кнопки, я хочу, чтобы выбрать, какие ButtonSettings использовать, указав его ID. Затем, я хочу передать этот элемент ButtonSettings в качестве привязки или datacontext. В этом стиле будут использоваться дочерние элементы выбранного элемента (например, текст и изображение).
Выбор и определение содержимого кнопки отлично работает, если я определяю его непосредственно на кнопке, а не в стиле. Это XAML у меня есть для одной кнопки:
<Button
x:Name="ByeButton"
DataContext="{StaticResource dataProvider}">
<Button.Content>
<Grid>
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0">
<TextBlock.Text>
<Binding XPath="//ButtonSettings[@ID='Bye']/Text[@lang='FR']" />
</TextBlock.Text>
</TextBlock>
<Image Grid.Row="1" Width="20" Height="20">
<Image.Source>
<Binding XPath="//ButtonSettings[@ID='Bye']/Image" />
</Image.Source>
</Image>
</Grid>
</Button.Content>
</Button>
Я хочу, чтобы иметь возможность определить // ButtonSettings [@ ID = «ID»] для каждой кнопки и пусть стиль обработки остальной прокладки кнопки и размещение содержимого и текста. Можно ли это сделать?
Ну, я хочу указать, для каждой кнопки, какой экземпляр ButtonSettings использовать, передав Button ID экземпляра Buttonsettings-instance. С элементом ItemsContol, как потерянный ящик, listbox указывает, что получает каждый элемент. В этом случае у меня меньше контроля над своим пользовательским интерфейсом. – Loy