Хорошо, я довольно новичок в XAML & WPF, поэтому я пытаюсь создать учебный проект для создания периодической таблицы. У меня есть набор элементарных данных в XML. Я определил шаблон элемента управления в XAML, чтобы отобразить эту информацию для каждого химического элемента в виде кнопки в сетке:XAML Databinding в шаблонах управления с помощью динамического выражения Xpath
<ControlTemplate x:Key="elementTemplate" TargetType="{x:Type Button}">
<Grid>
<Rectangle x:Name="backingRect" Margin="2" StrokeThickness="0" RadiusX="3" RadiusY="3" Fill="{TemplateBinding Property=Button.Background}">
<Rectangle.Effect>
<DropShadowEffect BlurRadius="8"/>
</Rectangle.Effect>
</Rectangle>
<Viewbox>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="0.2*"/>
<RowDefinition Height="*"/>
<RowDefinition Height="0.2*"/>
</Grid.RowDefinitions>
<TextBlock FontWeight="DemiBold" TextAlignment="Center" Grid.Row="0" diag:PresentationTraceSources.TraceLevel="High">
<TextBlock.Text>
<Binding Source="{StaticResource elementData}">
<Binding.XPath>atom[@id='H']/scalar[@dictRef='bo:atomicNumber']</Binding.XPath>
</Binding>
</TextBlock.Text>
</TextBlock>
<TextBlock FontWeight="Bold" TextAlignment="Center" FontSize="28" Grid.Row="1" >
<TextBlock.Text>
<Binding Source="{StaticResource elementData}" >
<Binding.XPath>atom[@id='H']/label[@dictRef='bo:symbol']/@value</Binding.XPath>
</Binding>
</TextBlock.Text></TextBlock >
<TextBlock FontWeight="DemiBold" TextAlignment="Center" Grid.Row="2">1.0021</TextBlock>
</Grid>
</Viewbox>
</Grid>
</ControlTemplate>
Теперь, это создаст кнопку, которая связывается с моим исходными данными XML статический. Я хочу сделать замену критерия XPath выражением, которое извлекает содержимое кнопки, которая использует этот шаблон, например @id={TemplateBinding Button.Content}
(если такая возможность была возможна), поэтому, если я создаю такую кнопку с текстовым содержимым «Он», он будет извлекать соответствующие данные в XML-файле, такие как масса, атомный номер и т. Д. Что такое синтаксис для указания такого динамического XPath в XAML и привязка его к свойству в шаблоне управления?
Благодарим за ваш ответ, через год! Я отдам его. – deadlyvices