Привязка RelativeSource к родительскому свойству возвращаемого объекта ComboBox SelectedItem - PullRequest
0 голосов
/ 08 февраля 2010

Учитывая структуру данных { Элементы коллекции; String LocationName; }

И ComboBox, который связан с коллекцией таких элементов (описанных в структуре) с DisplayMemberPath, установленным в LocationName, как мне связать сетку данных с SelectedItem.Elements указанного комбинированного окна в XAML?

Насколько я понимаю, свойство SelectedItem поля со списком вернет LocationName. Мне нужно было бы перейти вверх в контексте данных структуры, а затем присоединить SourceItems к элементам. Правильный? Однако я не могу заставить его работать с разметкой Binding.

P.S. Я работаю над настройкой графического интерфейса с образцами данных.

Спасибо.

Обновление 1: код выглядит следующим образом:

<ComboBox x:Name="ComboBox1"
           ItemsSource="{Binding AdSources, Mode=OneWay}"
           DisplayMemberPath="NameProperty" />

<ComboBox x:Name="ComboBox2" 
               ItemsSource="{Binding SelectedItem.CollectionProperty, ElementName=ComboBox1, Mode=OneWay}"
               DisplayMemberPath="NameProperty2" />

<data:DataGrid x:Name="DataGrid"
        ItemsSource="{Binding SelectedItem.CollectionProperty, ElementName=ComboBox2, Mode=OneWay}">
      <data:DataGrid.Columns>
          <data:DataGridTextColumn Header="Column1" Binding="{Binding Property1}"/>
      </data:DataGrid.Columns>
</data:DataGrid>

1 Ответ

1 голос
/ 08 февраля 2010

SelectedItem будет указывать на весь объект, поэтому вы указали DisplayMemberPath для LocationName. Выделен весь объект, но отображается только название местоположения.

Вы можете связать с SelectedItem.Elements - если это не сработает, ваша проблема в другом месте.

...