У меня есть поле со списком WPF, определенное так:
<ComboBox Grid.Column="1" x:Name="cUrls" SelectedIndex="1" ItemsSource=" {Binding XPath=//data/endpoints/endpoint}" Margin="5" >
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding XPath=@name}"></TextBlock>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
Окно привязано к XmlDocument следующим образом:
<?xml version="1.0" encoding="utf-8" ?>
<data>
<endpoints>
<endpoint name="test">test url</endpoint>
<endpoint default="true" name="production">production url</endpoint>
</endpoints>
<requests>
<request >
...
</request>
<request >
...
</request>
</requests>
</data>
Привязка работает нормально, и в поле со списком отображаются элементы «test» и «production», и я могу извлечь правильный URL из свойства SelectedValue.
Я бы хотел установить свойство SelectedIndex
в ComboBox для индекса узла <endpoint>
, который имеет атрибут default=true
.
Могу ли я сделать SelectedIndex="{Binding XPath=}"
на ComboBox? Если да, как бы выглядело это выражение? Если нет, что мне делать?
спасибо!