zoukankan      html  css  js  c++  java
  • VMTreeView:NotificationObject

     public class VMTreeView:NotificationObject
        {
            public ObservableCollection<OneNode> OneNodeList { get; set; }

            public VMTreeView()
            {
                OneNodeList = new ObservableCollection<OneNode>();

                ObservableCollection<OneNode> NodeList1 = new ObservableCollection<OneNode>();
                NodeList1.Add(new OneNode { GuoJia = "青岛1" });
                NodeList1.Add(new OneNode { GuoJia = "青岛2" });

                ObservableCollection<OneNode> NodeList2 = new ObservableCollection<OneNode>();
                NodeList2.Add(new OneNode { GuoJia = "菏泽", NodeList = NodeList1 });
                NodeList2.Add(new OneNode { GuoJia = "青岛" });

                ObservableCollection<OneNode> OneNodeList1 = new ObservableCollection<OneNode>();

                OneNodeList1.Add(new OneNode { GuoJia = "山东", NodeList = NodeList2 });
                OneNodeList1.Add(new OneNode { GuoJia = "广东" });

                OneNodeList.Add(new OneNode { GuoJia = "中国", NodeList = OneNodeList1 });
                OneNodeList.Add(new OneNode { GuoJia = "美国", });
               // OneNodeList.Add(new OneNode { GuoJia = "韩国" });

                RaisePropertyChanged(string.Empty);
            }
        }

        public class OneNode
        {
            public string GuoJia { get; set; }

            public ObservableCollection<OneNode> NodeList { get; set; }
        }

    <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="auto"></ColumnDefinition>
                <ColumnDefinition Width="auto"></ColumnDefinition>
            </Grid.ColumnDefinitions>
            <Grid.Resources>

                <HierarchicalDataTemplate  x:Key="OneNode" ItemsSource="{Binding NodeList}">
                    <TextBlock Text="{Binding Path=GuoJia}"/>
                </HierarchicalDataTemplate>

                <HierarchicalDataTemplate x:Key="TwoNode"
                                    ItemsSource = "{Binding Path=TwoNodeList}">
                    <TextBlock Text="{Binding Path=Name}"/>
                </HierarchicalDataTemplate>

                <XmlDataProvider x:Key="treeData" XPath="*">
                    <x:XData>
                        <Items Name="Items" xmlns="">
                            <Item1/>
                            <Item2>
                                <Item22/>
                                <Item12/>
                                <Item13>
                                    <Item131/>
                                    <Item131/>
                                </Item13>
                            </Item2>
                        </Items>
                    </x:XData>
                </XmlDataProvider>
                <HierarchicalDataTemplate ItemsSource="{Binding XPath=child::*}"   x:Key="template">
                    <TextBlock Name="textBlock" Text="{Binding Name}"/>
                </HierarchicalDataTemplate>

            </Grid.Resources>

            <TreeView Grid.Column="0">
                <TreeView.Items>
                    <TreeViewItem Header="根节点1">
                        <TreeViewItem Header="根节点1.1"></TreeViewItem>
                        <TreeViewItem ItemsSource="{Binding Source={StaticResource OneNode}}" Header="My Soccer Leagues" />
                    </TreeViewItem>
                    <TreeViewItem Header="根节点2" IsExpanded="True">
                        <TreeViewItem Header="根节点2.1"></TreeViewItem>

                        <TreeViewItem IsExpanded="True" ItemTemplate="{StaticResource OneNode}" ItemsSource="{Binding OneNodeList}" Header="My Soccer Leagues" />
                    </TreeViewItem>
                </TreeView.Items>
            </TreeView>

            <TreeView Grid.Column="1" ItemTemplate="{StaticResource template}"
               ItemsSource="{Binding Source={StaticResource treeData}}">
            </TreeView>
        </Grid>

     <Grid>
            <TreeView ItemsSource="{Binding DataSource}" x:Name="trv_Menu" Margin="5">
                <TreeView.ItemTemplate>
                    <HierarchicalDataTemplate>
                        <StackPanel Orientation="Horizontal">
                            <Image Source="..\..\Resource\Menu.png" Margin="2"/>
                            <TextBlock Text="{Binding Name}" Margin="2"/>
                        </StackPanel>
                    </HierarchicalDataTemplate>
                </TreeView.ItemTemplate>
                <Event:Interaction.Triggers>
                    <Event:EventTrigger EventName="SelectedItemChanged" SourceName="trv_Menu">
                        <GalaCommand:EventToCommand Command="{Binding ShowContentCommand}"
                                                   CommandParameter="{Binding ElementName=trv_Menu,Path=SelectedItem}"/>  
                    </Event:EventTrigger>
                </Event:Interaction.Triggers>
            </TreeView>
        </Grid>

  • 相关阅读:
    POJ 1426 Find The Multiple(数论——中国同余定理)
    POJ 2253 Frogger(Dijkstra变形——最短路径最大权值)
    POJ 3790 最短路径问题(Dijkstra变形——最短路径双重最小权值)
    POJ 3278 Catch That Cow(模板——BFS)
    HDU 1071 The area
    HDU 1213 How Many Tables(模板——并查集)
    POJ 1611 The Suspects
    light oj 1214 Large Division
    POJ 1258 Agri-Net(Prim算法求解MST)
    POJ 2387 Til the Cows Come Home(模板——Dijkstra算法)
  • 原文地址:https://www.cnblogs.com/iwangjun/p/2432599.html
Copyright © 2011-2022 走看看