Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wpf 树状视图布局_Wpf_Layout_Treeview - Fatal编程技术网

Wpf 树状视图布局

Wpf 树状视图布局,wpf,layout,treeview,Wpf,Layout,Treeview,我对布局有问题 在初始窗口中,一切都如预期的那样 单击某个父项或子项时,所有内容都向右对齐。我不希望出现这种情况。以下是截图: 有人能帮我吗 XAML布局模板: “文本块”样式 <Style x:Key="textBlock" TargetType="{x:Type TextBlock}"> <Setter Property="FontFamily" Value="Verdana"></Setter>

我对布局有问题

在初始窗口中,一切都如预期的那样

单击某个父项或子项时,所有内容都向右对齐。我不希望出现这种情况。以下是截图:

有人能帮我吗

XAML布局模板:

“文本块”样式

 <Style x:Key="textBlock" TargetType="{x:Type TextBlock}">

            <Setter Property="FontFamily" Value="Verdana"></Setter>
            <Setter Property="FontSize" Value="12"></Setter>
        </Style>   

项目布局:

<HierarchicalDataTemplate 
                        DataType="{x:Type models:EntityViewModel}" ItemsSource="{Binding Children}" >
                        <Grid Margin="0,0,3,0">
                            <TextBlock Style="{StaticResource textBlock}" TextWrapping="Wrap" Width="{Binding ActualWidth, ElementName=EntityTree}">
                                <Hyperlink NavigateUri="{Binding Url}" RequestNavigate="Hyperlink_RequestNavigate">
                                    <TextBlock Text="{Binding ID}"></TextBlock>
                                </Hyperlink>
                                <TextBlock Text="{Binding TypeName}"></TextBlock>
                                <TextBlock Text="{Binding Explanation}"></TextBlock>
                            </TextBlock>
                        </Grid>
                    </HierarchicalDataTemplate>

父布局:

 <HierarchicalDataTemplate 
                    DataType="{x:Type models:ParentViewModel}" ItemsSource="{Binding Children}">
                    <Grid Margin="0,0,3,0">
                    <TextBlock Style="{StaticResource textBlock}" TextWrapping="Wrap" Width="{Binding ActualWidth, ElementName=EntityTree}" >
                            <TextBlock Text="{Binding ParentName}"/>
                            <Run Text=" kategorisinde toplam "></Run>
                            <TextBlock Text="{Binding ItemsCount}"></TextBlock>
                            <Run Text=" adet kayıt"></Run>
                        </TextBlock>
                        </Grid>
                </HierarchicalDataTemplate>


这可能也是由于EntityViewModel数据模板中文本块宽度的绑定造成的。我假设EntityTree是整个TreeView的名称。您强制TextBlock的宽度大于整个TreeView,因为它在第二级缩进,这会导致TreeView尝试使整个TextBlock可见并强制向右滚动。尝试在第一种方法中设置固定宽度,该宽度小于或等于可用宽度

,这可能也是由于EntityViewModel数据模板中文本块宽度的绑定所致。我假设EntityTree是整个TreeView的名称。您强制TextBlock的宽度大于整个TreeView,因为它在第二级缩进,这会导致TreeView尝试使整个TextBlock可见并强制向右滚动。尝试在第一种方法中设置固定宽度,该宽度小于或等于可用宽度

,这可能也是由于EntityViewModel数据模板中文本块宽度的绑定所致。我假设EntityTree是整个TreeView的名称。您强制TextBlock的宽度大于整个TreeView,因为它在第二级缩进,这会导致TreeView尝试使整个TextBlock可见并强制向右滚动。尝试在第一种方法中设置固定宽度,该宽度小于或等于可用宽度。感谢您的精彩解释。这似乎是合理的。通过删除width属性,解决了右对齐问题。谢谢。如果您愿意,我将其作为答案发布。您也可以将其标记为答案。可能这也是由于EntityViewModel数据模板中文本块宽度的绑定所致。我假设EntityTree是整个TreeView的名称。您强制TextBlock的宽度大于整个TreeView,因为它在第二级缩进,这会导致TreeView尝试使整个TextBlock可见并强制向右滚动。尝试在第一种方法中设置固定宽度,该宽度小于或等于可用宽度。感谢您的精彩解释。这似乎是合理的。通过删除width属性,解决了右对齐问题。谢谢。我把它贴成了答案,如果你喜欢,你也可以把它标成答案。