2010-06-17 6 views
0

wpf treeview 컨트롤이 있고 생성자의 매개 변수에 따라 NumberOfHotels 풀을 표시하고 싶습니다.wpf treeview에서 od 매개 변수에 따라 풀을 분산시키기

<Grid> 
    <StackPanel Name="stackPanel1"> 
     <GroupBox Header="Wybierz" 
        Height="354" 
        Name="groupBox1" 
        Width="Auto"> 
      <TreeView Name="structureTree" 
         SelectedItemChanged="structureTree_SelectedItemChanged" 
         Grid.Row="0" Grid.Column="0" 
         ItemsSource="{Binding}" 
         Height="334" Width="Auto" 
         ScrollViewer.VerticalScrollBarVisibility="Visible" 
         ScrollViewer.HorizontalScrollBarVisibility="Visible" 
         PreviewMouseRightButtonUp="structureTree_PreviewMouseRightButtonUp" 
         FontFamily="Verdana" FontSize="12" 
         BorderThickness="1" MinHeight="0" 
         Padding="1" Margin="-1" 
         Cursor="Hand"> 
       <TreeView.Resources> 
        <HierarchicalDataTemplate DataType="{x:Type MyService:Country}" 
               ItemsSource="{Binding Path=ListOfRegions}"> 
         <StackPanel Orientation="Horizontal"> 
          <TextBlock TextAlignment="Justify" 
             VerticalAlignment="Center" 
             Text="{Binding Path=Name}"/> 
          <TextBlock TextAlignment="Justify" 
             VerticalAlignment="Center" 
             Text=" "/> 
          <TextBlock TextAlignment="Justify" 
             VerticalAlignment="Center" 
             Text="H:"/> 
          <TextBlock TextAlignment="Justify" 
             VerticalAlignment="Center" 
             Text="{Binding Path=NumberOfHotels}"/> 
          <TextBlock TextAlignment="Justify" 
             VerticalAlignment="Center" 
             Text=" "/> 
          <TextBlock TextAlignment="Justify" 
             VerticalAlignment="Center" 
             Text=" S:"/> 
          <TextBlock TextAlignment="Justify" 
             VerticalAlignment="Center" 
             Text="{Binding Path=NumberOfZones}"/> 
         </StackPanel> 
        </HierarchicalDataTemplate> 
       </TreeView.Resources> 
      </TreeView> 
     </GroupBox> 
    </StackPanel> 
</Grid> 

어떤 방법이 있습니까?

답변

1

예. 당신의 생성자에서이 같은 유형의 가시성의 속성 설정 :

public class MyUserControl : UserControl 
{ 
    public TreeViewVisibility { get; private set; } 

    public MyUserControl(bool showTreeView) 
    { 
    TreeViewVisibility = showTreeView ? Visibility.Visible : Visibility.Collapsed; 
    ... 
    } 
} 

을 그리고 당신의 XAML에서 바인딩 :

... 
<TreeView Visibility="{Binding TreeViewVisibility, 
      RelativeSource={RelativeSource FindAncestor,local:MyUserControl,1}}" /> 
관련 문제