Сетка данных WPF XML-привязка, отображающая несколько элементов в ячейке с использованием DataTemplate - PullRequest
0 голосов
/ 04 ноября 2010

У меня есть DataGrid, который выглядит следующим образом: *

<wpfkit:DataGrid AutoGenerateColumns="False"
       ItemsSource="{Binding}"
       Width="Auto"
       FrozenColumnCount="2"
       SelectionMode="Extended"
       CanUserAddRows="False"
       x:Name="CommonPEGrid"
       Loaded="CommonPEGrid_Loaded">
    <wpfkit:DataGrid.DataContext>
        <XmlDataProvider Source="PE.xml" XPath="/Rows/Row"></XmlDataProvider>
    </wpfkit:DataGrid.DataContext>
</wpfkit:DataGrid>

Я связываю его из XML в DataGrid.Мой XML выглядит следующим образом: *

<Rows>
<Row Id="1">
  <Devices>
    <Device>Device 1</Device>
    <Device>Device 2</Device>
 </Devices>
</Row>

<Row Id="2">
  <Devices>
    <Device>Device 3</Device>
    <Device>Device 4</Device>
  </Devices>
</Row>

У меня есть DataTemplate для ячейки в DataGrid, определенной следующим образом:

<DataTemplate x:Key="MethodDefault">
    <ComboBox Margin="5" Height="25" ItemsSource="{Binding XPath=./Devices}"  SelectedIndex="0" 
                       >
        <ComboBox.ItemTemplate>
            <DataTemplate>
                <TextBlock Text="{Binding XPath=./Device}"></TextBlock>
            </DataTemplate>
        </ComboBox.ItemTemplate>
    </ComboBox>
</DataTemplate>

Проблема в том, что он всегда отображает только 1 устройство, т.е. первое устройство в выпадающем списке.Я хочу отобразить все устройства в раскрывающемся списке.Я не знаю, как перебирать их.Я думал, что ComboBox будет автоматически повторять, что не так.Пожалуйста, помогите мне !!

1 Ответ

0 голосов
/ 24 ноября 2010

Я мог бы найти ответ.Я публикую это, предполагая, что это помогает кому-то !!

<ComboBox  ItemsSource="{Binding XPath=.//Devices}"  SelectedIndex="0" >

</ComboBox>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...