Визуальный размер сетки уменьшается в шаблоне treeviewItem - PullRequest
0 голосов
/ 29 сентября 2018

У меня проблема с размером рендеринга Part_Header (ContentPresenter) в сетке TreeViewItem, уменьшающейся из-за размера рендеринга родительской сетки.

Родительский и дочерний значения RenderSize

Ниже приведен код шаблона TreviewItem.У меня есть текстовый блок, который должен отображаться на всю длину ширины родительской сетки.TextBlock получает ширину от ширины родительской сетки, которая вычисляется из его родительской

<HierarchicalDataTemplate x:Key="DocTemplate" ItemsSource="{Binding Pages}">

    <Grid x:Name="m_Grid" Background="Aqua" MaxWidth="{Binding  RelativeSource={RelativeSource  Mode=FindAncestor, AncestorType={x:Type Grid}, AncestorLevel=3}, 
            Path=ActualWidth, UpdateSourceTrigger=PropertyChanged}" RenderSize="300,52">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="4" />
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
        <Grid.ToolTip>
            <ToolTip>
                <StackPanel Orientation="Horizontal">
                    <Image
                        Width="{local:ApplicationBinder AButtonSize}"
                        Height="{local:ApplicationBinder AButtonSize}"
                        HorizontalAlignment="Center"
                        VerticalAlignment="Center"
                        Source="{DynamicResource PDFDoc}"
                        Stretch="UniformToFill" />
                    <Grid Width="4" />
                    <TextBlock
                        HorizontalAlignment="Left"
                        VerticalAlignment="Center"
                        Style="{DynamicResource Heading2}"
                        Text="{Binding Name, UpdateSourceTrigger=PropertyChanged}"
                        TextTrimming="WordEllipsis" />
                </StackPanel>
            </ToolTip>
        </Grid.ToolTip>
        <Image
            Grid.Column="1"
            Width="{local:ApplicationBinder Path=AButtonSize}"
            Height="{local:ApplicationBinder Path=AButtonSize}"
            HorizontalAlignment="Center"
            VerticalAlignment="Center"
            Source="{DynamicResource PDFDoc}"
            Stretch="UniformToFill" />
        <!--  options Button  -->
        <mui:ModernButton
            Grid.Column="2"
            HorizontalAlignment="Left"
            VerticalAlignment="Center"
            Command="{Binding AddNewPageCommand}"
            CommandParameter="{Binding}"
            EllipseDiameter="{local:ApplicationBinder Path=AButtonSize}"
            EllipseStrokeThickness="1"
            IconHeight="{local:ApplicationBinder Path=AButtonSize}"
            IconWidth="{local:ApplicationBinder Path=AButtonSize}"
            IsEnabled="{Binding ParentRoute.Me.IsOriginator, UpdateSourceTrigger=PropertyChanged}"
            ToolTip="This Tool Will Allow You to Modify the Selected Document....">
            <mui:ModernButton.Style>
                <Style>
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding ParentRoute.Me.IsOriginator, UpdateSourceTrigger=PropertyChanged}" Value="True">
                            <Setter Property="mui:ModernButton.Source" Value="{DynamicResource Settings}" />
                        </DataTrigger>
                        <DataTrigger Binding="{Binding ParentRoute.Me.IsOriginator, UpdateSourceTrigger=PropertyChanged}" Value="False">
                            <Setter Property="mui:ModernButton.Source" Value="{DynamicResource SettingsNorm}" />
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </mui:ModernButton.Style>
        </mui:ModernButton>
        <!--  Document Details  -->
        <!--<StackPanel
            Grid.Column="3"
            Margin="7"
            HorizontalAlignment="Left"
            VerticalAlignment="Center"
            Orientation="Vertical" 
            MaxWidth="{Binding ActualWidth, ElementName=m_Grid, UpdateSourceTrigger=PropertyChanged}">-->
        <Grid  Grid.Column="3"
            Margin="7">
            <Grid.RowDefinitions>
                <RowDefinition Height="*" />
                <RowDefinition Height="Auto" />
            </Grid.RowDefinitions>
            <TextBlock
                HorizontalAlignment="Left"
                VerticalAlignment="Center"
                Style="{DynamicResource Heading2}"
                Text="{Binding Name, UpdateSourceTrigger=PropertyChanged}"
                TextTrimming="WordEllipsis" />
            <Grid Height="3" />
            <TextBlock
                Grid.Row="1"
                HorizontalAlignment="Left"
                VerticalAlignment="Center"
                Style="{DynamicResource NormalText}"
                Text="{Binding Description, UpdateSourceTrigger=PropertyChanged}"
                TextTrimming="WordEllipsis" />
        <!--</StackPanel>-->
        </Grid>
    </Grid>
</HierarchicalDataTemplate>

Как получить размер рендеринга дочерней сетки такой же, как значение родительской сетки?

...