Сетка данных как столбец в основном Сетка данных не устанавливает выбранное значение в привязке «Выбранный элемент» - PullRequest
0 голосов
/ 18 апреля 2019

У меня есть DataGrid (A), у которого есть ребенок DataGridTemplateColumn, который является другим Datagrid (A ').A имеет коллекцию (C), связанную в Itemsource, а A 'связана с объектом коллекции, присутствующим в C. Оба отображают данные должным образом.

Проблема заключается в том, что при получении с использованием SelectedItem из A 'данные о выбранной строке не сохраняются в свойстве binded.Есть ли способ получить эти данные?или лучший способ реализовать и получить SelectedItem информацию из «Nested DataGrids».Спасибо

<DataGrid AutoGenerateColumns="False" IsReadOnly="True"  SelectedItem="{Binding SelectedUsedDiagram}"  ItemsSource="{Binding UsedDiagramCollection, Mode=OneWay}"">
                <DataGrid.Columns>
                    <DataGridTemplateColumn Width="*">
                        <DataGridTemplateColumn.CellTemplate>
                            <DataTemplate>
                                <Expander  IsExpanded="True" Style="{StaticResource Expander_Style}">
                                    <Expander.Header>
                                        <StackPanel Orientation="Horizontal">
                                            <Image Source="{Binding Path=UIcon, Converter={StaticResource ImageConverter},Mode=TwoWay}" Margin="2" />
                                            <TextBlock Text="{Binding UsedDiagram.DiagramName }" Margin="2" />
                                        </StackPanel>
                                    </Expander.Header>
                                    <DataGrid Name="DiagramFlows"  AutoGenerateColumns="False" IsReadOnly="True" ItemsSource="{Binding Flows,Mode=OneWay}"  SelectedItem="{Binding DiagramFlow}" >
                                        <DataGrid.Columns>
                                            <DataGridTextColumn Binding="{Binding Type, Mode=OneWay}" />
                                        </DataGrid.Columns>
                                    </DataGrid>
                                </Expander>
                            </DataTemplate>
                        </DataGridTemplateColumn.CellTemplate>
                    </DataGridTemplateColumn>
                </DataGrid.Columns>
</DataGrid>

Ожидаемые результаты:

1) SelectedUsedDiagram - должна содержать информацию о выбранной строке в DataGrid (UsedDiagramCollection): - Работает нормально.

2) DiagramFlow: - должна содержать информацию о выбранной строке во вложенном DataGrid. (Потоки: - это другая коллекция для каждого объекта «Используемой коллекции диаграмм») - Всегда пусто / Нуль / никогда не устанавливается.

...