添加右侧菜单
							parent
							
								
									693d89522c
								
							
						
					
					
						commit
						8cc06bb9bd
					
				
											
												Binary file not shown.
											
										
									
								
											
												Binary file not shown.
											
										
									
								| 
		 After Width: | Height: | Size: 779 B  | 
@ -0,0 +1,4 @@
 | 
				
			|||||||
 | 
					<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 | 
				
			||||||
 | 
					                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
 | 
				
			||||||
 | 
					    <FontFamily x:Key="Iconfont">pack://application:,,,/StartServerWPF.Modules.Main;component/Fonts/#iconfont</FontFamily>
 | 
				
			||||||
 | 
					</ResourceDictionary>
 | 
				
			||||||
@ -0,0 +1,140 @@
 | 
				
			|||||||
 | 
					<UserControl x:Class="StartServerWPF.Modules.Main.Views.TreeMenuView"
 | 
				
			||||||
 | 
					             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 | 
				
			||||||
 | 
					             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 | 
				
			||||||
 | 
					             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
 | 
				
			||||||
 | 
					             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
 | 
				
			||||||
 | 
					             xmlns:prism="http://prismlibrary.com/"
 | 
				
			||||||
 | 
					             prism:ViewModelLocator.AutoWireViewModel="True"
 | 
				
			||||||
 | 
					             mc:Ignorable="d" 
 | 
				
			||||||
 | 
					             d:DesignHeight="450" d:DesignWidth="800">
 | 
				
			||||||
 | 
					    <UserControl.Resources>
 | 
				
			||||||
 | 
					        <ResourceDictionary>
 | 
				
			||||||
 | 
					        <ResourceDictionary.MergedDictionaries>
 | 
				
			||||||
 | 
					                <ResourceDictionary Source="pack://application:,,,/StartServerWPF.Modules.Main;component/Styles/BaseResources.xaml"/>
 | 
				
			||||||
 | 
					                    <!--<ResourceDictionary Source="/Detection.platform.Assets;component/Styles/ButtonStyles.xaml"/>-->
 | 
				
			||||||
 | 
					                <ResourceDictionary>
 | 
				
			||||||
 | 
					                    <ControlTemplate TargetType="ToggleButton" x:Key="ArrowButtonTemplate">
 | 
				
			||||||
 | 
					                        <Grid Background="Transparent" Name="back">
 | 
				
			||||||
 | 
					                            <TextBlock Text="" FontFamily="{StaticResource Iconfont}" 
 | 
				
			||||||
 | 
					                           VerticalAlignment="Center" HorizontalAlignment="Center"
 | 
				
			||||||
 | 
					                           RenderTransformOrigin="0.5,0.5" Name="arrow">
 | 
				
			||||||
 | 
					                            </TextBlock>
 | 
				
			||||||
 | 
					                        </Grid>
 | 
				
			||||||
 | 
					                        <ControlTemplate.Triggers>
 | 
				
			||||||
 | 
					                            <Trigger Property="IsChecked" Value="True">
 | 
				
			||||||
 | 
					                                <Setter TargetName="arrow" Property="RenderTransform">
 | 
				
			||||||
 | 
					                                    <Setter.Value>
 | 
				
			||||||
 | 
					                                        <RotateTransform Angle="90"/>
 | 
				
			||||||
 | 
					                                    </Setter.Value>
 | 
				
			||||||
 | 
					                                </Setter>
 | 
				
			||||||
 | 
					                            </Trigger>
 | 
				
			||||||
 | 
					                            <Trigger Property="IsMouseOver" Value="True">
 | 
				
			||||||
 | 
					                                <Setter TargetName="back" Property="Background" Value="#11000000"/>
 | 
				
			||||||
 | 
					                            </Trigger>
 | 
				
			||||||
 | 
					                        </ControlTemplate.Triggers>
 | 
				
			||||||
 | 
					                    </ControlTemplate>
 | 
				
			||||||
 | 
					                </ResourceDictionary>
 | 
				
			||||||
 | 
					            </ResourceDictionary.MergedDictionaries>
 | 
				
			||||||
 | 
					    </ResourceDictionary>
 | 
				
			||||||
 | 
					    </UserControl.Resources>
 | 
				
			||||||
 | 
					    <Grid Background="#66FFFFFF">
 | 
				
			||||||
 | 
					        <Grid.Resources>
 | 
				
			||||||
 | 
					            <Style TargetType="TreeViewItem">
 | 
				
			||||||
 | 
					                <Setter Property="Background" Value="Transparent"/>
 | 
				
			||||||
 | 
					                <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}"></Setter>
 | 
				
			||||||
 | 
					                <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
 | 
				
			||||||
 | 
					                <Setter Property="KeyboardNavigation.AcceptsReturn" Value="True" />
 | 
				
			||||||
 | 
					                <Setter Property="HorizontalContentAlignment" Value="Left"/>
 | 
				
			||||||
 | 
					                <Setter Property="VerticalContentAlignment" Value="Center"/>
 | 
				
			||||||
 | 
					                <Setter Property="Padding" Value="8,5"/>
 | 
				
			||||||
 | 
					                <Setter Property="Foreground" Value="#FF565656"/>
 | 
				
			||||||
 | 
					                <Setter Property="FontFamily" Value="{StaticResource Iconfont}"/>
 | 
				
			||||||
 | 
					                <Setter Property="FontSize" Value="12"/>
 | 
				
			||||||
 | 
					                <Setter Property="BorderThickness" Value="0"/>
 | 
				
			||||||
 | 
					                <Setter Property="Template">
 | 
				
			||||||
 | 
					                    <Setter.Value>
 | 
				
			||||||
 | 
					                        <ControlTemplate TargetType="TreeViewItem">
 | 
				
			||||||
 | 
					                            <Grid Background="Transparent" Name="root">
 | 
				
			||||||
 | 
					                                <Grid.ColumnDefinitions>
 | 
				
			||||||
 | 
					                                    <ColumnDefinition/>
 | 
				
			||||||
 | 
					                                    <ColumnDefinition MaxWidth="30"/>
 | 
				
			||||||
 | 
					                                </Grid.ColumnDefinitions>
 | 
				
			||||||
 | 
					                                <Grid.RowDefinitions>
 | 
				
			||||||
 | 
					                                    <RowDefinition Height="Auto" MinHeight="36"/>
 | 
				
			||||||
 | 
					                                    <RowDefinition  />
 | 
				
			||||||
 | 
					                                </Grid.RowDefinitions>
 | 
				
			||||||
 | 
					                                <Grid.InputBindings>
 | 
				
			||||||
 | 
					                                    <MouseBinding MouseAction="LeftDoubleClick"
 | 
				
			||||||
 | 
					                                                              Command="{Binding OpenViewCommand}"
 | 
				
			||||||
 | 
					                                                              CommandParameter="{Binding}"/>
 | 
				
			||||||
 | 
					                                </Grid.InputBindings>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                <Border x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}"
 | 
				
			||||||
 | 
					                                                BorderThickness="{TemplateBinding BorderThickness}"
 | 
				
			||||||
 | 
					                                                Background="{TemplateBinding Background}"
 | 
				
			||||||
 | 
					                                                CornerRadius="0" Grid.ColumnSpan="2" Padding="{TemplateBinding Padding}"
 | 
				
			||||||
 | 
					                                                SnapsToDevicePixels="true">
 | 
				
			||||||
 | 
					                                    <ContentPresenter x:Name="PART_Header" ContentSource="Header"
 | 
				
			||||||
 | 
					                                                              HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
 | 
				
			||||||
 | 
					                                                              VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
 | 
				
			||||||
 | 
					                                                              SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}">
 | 
				
			||||||
 | 
					                                    </ContentPresenter>
 | 
				
			||||||
 | 
					                                </Border>
 | 
				
			||||||
 | 
					                                <ToggleButton x:Name="Expander" Grid.Column="1" ClickMode="Press"
 | 
				
			||||||
 | 
					                                                      IsChecked="{Binding IsExpanded, RelativeSource={RelativeSource TemplatedParent}}"
 | 
				
			||||||
 | 
					                                                      Template="{StaticResource ArrowButtonTemplate}"/>
 | 
				
			||||||
 | 
					                                <ItemsPresenter x:Name="ItemsHost" Margin="18,0,0,0" Grid.ColumnSpan="2" Grid.Row="1" />
 | 
				
			||||||
 | 
					                            </Grid>
 | 
				
			||||||
 | 
					                            <ControlTemplate.Triggers>
 | 
				
			||||||
 | 
					                                <Trigger Property="IsExpanded" Value="false">
 | 
				
			||||||
 | 
					                                    <Setter Property="Visibility" TargetName="ItemsHost" Value="Collapsed"/>
 | 
				
			||||||
 | 
					                                </Trigger>
 | 
				
			||||||
 | 
					                                <Trigger Property="HasItems" Value="false">
 | 
				
			||||||
 | 
					                                    <Setter Property="Visibility" TargetName="Expander" Value="Hidden"/>
 | 
				
			||||||
 | 
					                                </Trigger>
 | 
				
			||||||
 | 
					                                <Trigger Property="IsSelected" Value="true">
 | 
				
			||||||
 | 
					                                    <Setter Property="Background" TargetName="Bd" Value="#FF009DFF"/>
 | 
				
			||||||
 | 
					                                    <Setter Property="Foreground" Value="#FFFFFFFF"/>
 | 
				
			||||||
 | 
					                                    <Setter Property="Foreground" Value="#FFFFFFFF" TargetName="Expander"/>
 | 
				
			||||||
 | 
					                                </Trigger>
 | 
				
			||||||
 | 
					                                <!--被选中后失去焦点-->
 | 
				
			||||||
 | 
					                                <MultiTrigger>
 | 
				
			||||||
 | 
					                                    <MultiTrigger.Conditions>
 | 
				
			||||||
 | 
					                                        <Condition Property="IsSelected" Value="true"/>
 | 
				
			||||||
 | 
					                                        <Condition Property="IsSelectionActive" Value="false"/>
 | 
				
			||||||
 | 
					                                    </MultiTrigger.Conditions>
 | 
				
			||||||
 | 
					                                    <Setter Property="Background" TargetName="Bd" Value="SkyBlue"/>
 | 
				
			||||||
 | 
					                                    <Setter Property="Foreground" Value="#FFFFFFFF"/>
 | 
				
			||||||
 | 
					                                </MultiTrigger>
 | 
				
			||||||
 | 
					                                <DataTrigger Binding="{Binding MenuIcon}" Value="{x:Null}">
 | 
				
			||||||
 | 
					                                    <Setter Property="Margin" Value="10,0,0,0" TargetName="root"/>
 | 
				
			||||||
 | 
					                                </DataTrigger>
 | 
				
			||||||
 | 
					                            </ControlTemplate.Triggers>
 | 
				
			||||||
 | 
					                        </ControlTemplate>
 | 
				
			||||||
 | 
					                    </Setter.Value>
 | 
				
			||||||
 | 
					                </Setter>
 | 
				
			||||||
 | 
					            </Style>
 | 
				
			||||||
 | 
					        </Grid.Resources>
 | 
				
			||||||
 | 
					        <TreeView BorderThickness="0" Background="Transparent" ItemsSource="{Binding Menus}" Margin="0,10">
 | 
				
			||||||
 | 
					            <TreeView.ItemTemplate>
 | 
				
			||||||
 | 
					                <HierarchicalDataTemplate ItemsSource="{Binding Children,Mode=TwoWay}">
 | 
				
			||||||
 | 
					                    <Grid>
 | 
				
			||||||
 | 
					                        <Grid.ColumnDefinitions>
 | 
				
			||||||
 | 
					                            <ColumnDefinition Width="30" Name="c1"/>
 | 
				
			||||||
 | 
					                            <ColumnDefinition/>
 | 
				
			||||||
 | 
					                        </Grid.ColumnDefinitions>
 | 
				
			||||||
 | 
					                        <TextBlock Text="{Binding  MenuIcon}" VerticalAlignment="Center" HorizontalAlignment="Center"
 | 
				
			||||||
 | 
					                                   FontSize="15" SnapsToDevicePixels="True"
 | 
				
			||||||
 | 
					                                   FontFamily="{StaticResource Iconfont}"/>
 | 
				
			||||||
 | 
					                        <TextBlock Text="{Binding MenuHeader}" Grid.Column="1" Margin="5,5,0,5" FontSize="15"/>
 | 
				
			||||||
 | 
					                    </Grid>
 | 
				
			||||||
 | 
					                    <HierarchicalDataTemplate.Triggers>
 | 
				
			||||||
 | 
					                        <DataTrigger Binding="{Binding MenuIcon}" Value="{x:Null}">
 | 
				
			||||||
 | 
					                            <Setter TargetName="c1" Property="Width" Value="0"/>
 | 
				
			||||||
 | 
					                        </DataTrigger>
 | 
				
			||||||
 | 
					                    </HierarchicalDataTemplate.Triggers>
 | 
				
			||||||
 | 
					                </HierarchicalDataTemplate>
 | 
				
			||||||
 | 
					            </TreeView.ItemTemplate>
 | 
				
			||||||
 | 
					        </TreeView>
 | 
				
			||||||
 | 
					    </Grid>
 | 
				
			||||||
 | 
					</UserControl>
 | 
				
			||||||
					Loading…
					
					
				
		Reference in New Issue