2017-09-03 1 views
0

문자열 목록을 TreeViewItem에 바인딩하려고하지만 어떤 이유로 데이터가 표시되지 않으며 오류가 없습니다.목록에서 ItemSource를 사용하여 TreeViewItem 하위 항목 만들기 <string>

XAML에서 TreeViewItem에 다음 항목이 있습니다. 연사 코드에서

<TreeView Name="treeContainer"> 
      <TreeViewItem Header="Tables" Name="treeTablesContainer"> 
       <ItemsControl.ItemContainerStyle> 
        <Style TargetType="{x:Type TreeViewItem}" /> 
       </ItemsControl.ItemContainerStyle> 
       <ItemsControl.ItemTemplate> 
        <HierarchicalDataTemplate 
         DataType="{x:Type system:String}"> 
         <TextBlock Text="{Binding dbTables}" /> 
        </HierarchicalDataTemplate> 
       </ItemsControl.ItemTemplate> 
      </TreeViewItem> 
     </TreeView> 

나는 다음과 같은 한 :

dbTables = new List<string>(); 
      dbTables.Add("Tabl2"); 
      treeTablesContainer.ItemsSource = dbTables; 

TreeViewItem을 확장 할 수 있지만, 아이가 표시되지 무관가 무너 나는이를 얻는 방법을 볼 수 없습니다 작업.

다른 프로젝트의 다른 부분에서 이와 비슷한 작업을 수행했습니다. 목록의 형식은 내 자신의 클래스이고,이 줄은 <TextBlock Text="{Binding dbTables}" />이라는 줄로 참조 할 수 있지만이 때문에 작동하지 않습니다. List<string> 유형에 액세스 할 수있는 속성이 없으므로 내 생각이 정확하고 그렇다면 어떻게 수정해야합니까?

답변

0

계층 적 데이터 템플릿은 출력 데이터 소스의 각 항목에 대한 데이터 템플릿입니다. 귀하의 예제에서 문자열 블록에 dbTables를 검색하는 텍스트 블록 바인딩을 의미합니다.

<TreeView Name="treeContainer"> 
     <TreeViewItem Header="Tables" Name="treeTablesContainer"> 
      <ItemsControl.ItemContainerStyle> 
       <Style TargetType="{x:Type TreeViewItem}" /> 
      </ItemsControl.ItemContainerStyle> 
      <ItemsControl.ItemTemplate> 
       <HierarchicalDataTemplate> 
        <TextBlock Text="{Binding}" /> 
       </HierarchicalDataTemplate> 
      </ItemsControl.ItemTemplate> 
     </TreeViewItem> 
    </TreeView> 
+0

에 모든 속성의 이름 dbTables에 결합하지 바인딩에 dbTables를 제거처럼 XAML 코드가 보일 것입니다, 내가 왜 생각하지 않았다 바인딩 매개 변수 만 제거하면됩니다. 감사 – Boardy

1
<TreeView Name="treeContainer"> 
      <TreeViewItem Header="Tables" Name="treeTablesContainer"> 
       <ItemsControl.ItemContainerStyle> 
        <Style TargetType="{x:Type TreeViewItem}" /> 
       </ItemsControl.ItemContainerStyle> 
       <ItemsControl.ItemTemplate> 
        <HierarchicalDataTemplate> 
         <TextBlock Text="{Binding }" /> 
        </HierarchicalDataTemplate> 
       </ItemsControl.ItemTemplate> 
      </TreeViewItem> 
     </TreeView> 

그냥 그것의 컬렉션 내가 시도하는 모든 것들의

관련 문제