У меня проблема при попытке заполнения DataGrid внутри моего пользовательского элемента управления, который встроен в родительский DataGrid RowDetailsTemplate . дочерний DataGrid (который находится внутри пользовательского элемента управления) должен заполнять связанную информацию, унаследованную от его родительского DataGrid.Каким-то образом это не работает, как ожидалось.Но когда я пытаюсь связать текстовый блок в моем дочернем пользовательском элементе управления, это работает!Надеюсь, что кто-то может помочь мне с этим: -)
Большое спасибо
Это мой родительский DataGrid:
<Custom:DataGrid x:Name="MainDataGrid"
Grid.Row="1"
Margin="10,10,10,12"
HorizontalAlignment="Stretch"
AlternatingRowBackground="AliceBlue"
AlternationCount="2"
AutoGenerateColumns="False"
EnableColumnVirtualization="false"
EnableRowVirtualization="false"
IsReadOnly="False"
ItemsSource="{Binding ChangeOverData}"
RowDetailsVisibilityMode="Visible"
SelectedItem="{Binding Path=ChangeOverDetailsSelected,
Mode=TwoWay,
Source={StaticResource GridOverviewViewModel}}"
SelectionMode="Single"
SelectionUnit="FullRow">
<Custom:DataGrid.Background>
<LinearGradientBrush StartPoint="0.5,0" EndPoint="0.5,1">
<GradientStop Offset="0" Color="#F7BFEE86" />
<GradientStop Offset="0.966" Color="#13A7E4FF" />
</LinearGradientBrush>
</Custom:DataGrid.Background>
<Custom:DataGrid.Columns>
<Custom:DataGridTemplateColumn Header="">
<Custom:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<Button Name="btnWIP"
Width="20"
Height="20"
HorizontalAlignment="Left"
Command="{Binding Source={StaticResource GridOverviewViewModel},
Path=ButtonReloadWIPDetails}"
Content="WIP"
Style="{DynamicResource RoundGlassButton}">
</Button>
</StackPanel>
</DataTemplate>
</Custom:DataGridTemplateColumn.CellTemplate>
</Custom:DataGridTemplateColumn>
<Custom:DataGridTextColumn Binding="{Binding StartDate,
StringFormat={}{0:dd/MM/yyyy}}"
Header="StartDate"
IsReadOnly="True" />
<Custom:DataGridTextColumn Binding="{Binding MacNo}"
Header="MacNo"
IsReadOnly="True" />
<Custom:DataGridTextColumn Binding="{Binding PosNo}"
Header="Pos"
IsReadOnly="True" />
<Custom:DataGridTextColumn Binding="{Binding Position}"
Header="Position"
IsReadOnly="True" />
<Custom:DataGridTextColumn Binding="{Binding CurMO}"
Header="CurrentMO"
IsReadOnly="True" />
<Custom:DataGridTextColumn Binding="{Binding NextMO}"
Header="NextMO"
IsReadOnly="True">
<Custom:DataGridTextColumn.ElementStyle>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="{Binding MOFontColor}" />
</Style>
</Custom:DataGridTextColumn.ElementStyle>
</Custom:DataGridTextColumn>
</Custom:DataGrid.Columns>
<Custom:DataGrid.RowDetailsTemplate>
<DataTemplate>
<local:DataGridRowDetails x:Name="CODetails"
/>
</DataTemplate>
</Custom:DataGrid.RowDetailsTemplate>
<Custom:DataGrid.GroupStyle>
<GroupStyle ContainerStyle="{StaticResource GroupHeaderStyle}">
<GroupStyle.Panel>
<ItemsPanelTemplate>
<Custom:DataGridRowsPresenter />
</ItemsPanelTemplate>
</GroupStyle.Panel>
</GroupStyle>
</Custom:DataGrid.GroupStyle>
</Custom:DataGrid>
И это мои дочерние элементы управления - который содержитдругая DataGrid
<Custom:DataGrid Name="dataGrid1"
Width="Auto"
Margin="0,0,0,45"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
HorizontalContentAlignment="Stretch"
VerticalContentAlignment="Stretch"
AlternatingRowBackground="Azure"
AlternationCount="2"
AutoGenerateColumns="False"
ItemsSource="{Binding}"
>
<Custom:DataGrid.Columns>
<Custom:DataGridTextColumn Binding="{Binding FIF}"
Header="FIF"
IsReadOnly="True" />
<Custom:DataGridTextColumn Binding="{Binding MacNo}"
Header="MacNo"
IsReadOnly="True" />
<Custom:DataGridTextColumn Binding="{Binding NomQty}"
Header="NomQty"
IsReadOnly="True" />
</Custom:DataGrid.Columns>
</Custom:DataGrid>
<TextBlock Name="textBlock1"
Width="85"
Height="23"
Margin="3,83,0,0"
HorizontalAlignment="Left"
VerticalAlignment="Top"
Text="{Binding Path=NextMO}"
/>