Как я могу установить свойство SelectedIndex ComboBox, которое связано с XML на основе атрибута в этом XML?

У меня есть WPF Combobox, определенный так:

<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? Если да, как бы выглядело это выражение? Если нет, что мне делать?

Спасибо!

1 ответ

Пытаться

      <ComboBox x:Name="cUrls" 
                SelectedItem="{Binding XPath=/data/endpoints/endpoint[@default\=\'true\']}"
Другие вопросы по тегам