Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.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
C# 在数据模板内设置宽度_C#_Wpf - Fatal编程技术网

C# 在数据模板内设置宽度

C# 在数据模板内设置宽度,c#,wpf,C#,Wpf,我正在使用HiearchicalDataTemplate在树状视图中显示项目。 我想在树状视图的第三层显示一个进度条。项目名称应位于左侧,进度条应位于最右侧。这就是我迄今为止所尝试的 <UserControl.Resources> <HierarchicalDataTemplate x:Key="Level3" ItemsSource="{Binding EquipmentCollection}"

我正在使用HiearchicalDataTemplate在树状视图中显示项目。 我想在树状视图的第三层显示一个进度条。项目名称应位于左侧,进度条应位于最右侧。这就是我迄今为止所尝试的

<UserControl.Resources>
<HierarchicalDataTemplate x:Key="Level3"
                              ItemsSource="{Binding EquipmentCollection}"
                              ItemTemplate="{StaticResource Level4}">
        <DockPanel HorizontalAlignment="Stretch">
            <TextBlock Text="{Binding GroupName}" DockPanel.Dock="Left"/>
            <ProgressBar x:Name="GrpProgress" Width="400" Margin="0,5,0,0" DockPanel.Dock="Right" 
            </ProgressBar>
        </DockPanel>
    </HierarchicalDataTemplate>
    <HierarchicalDataTemplate x:Key="Level2"
                              ItemsSource="{Binding FamilyMembers}"
                              ItemTemplate="{StaticResource Level3}">
        <TextBlock Text="{Binding FamilyName}"/>
    </HierarchicalDataTemplate>

    <HierarchicalDataTemplate x:Key="Level1"
                              ItemsSource="{Binding SelectedFamilies}"
                              ItemTemplate="{StaticResource Level2}">
        <TextBlock Text="{Binding Name}"/>
    </HierarchicalDataTemplate>
</UserControl.Resources>

<TreeView Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="3" x:Name="FamilyTreeView" Background="WhiteSmoke" 
          ItemsSource="{Binding SelectedItems}" ItemTemplate="{StaticResource Level1}" HorizontalContentAlignment="Stretch">
</TreeView>


Progressbar将填充DockPanel的其余部分。将第三个不可见的内容放入DockPanel,但不附带属性DockPanel.Dock。这会导致进度条位于右侧。

谢谢。它起作用了。我还必须为包含GroupName的TextBlock确定一个宽度,以便所有进度条从同一位置开始。:)