赞
踩
Expander控件有一个箭头按钮。单击箭头时,Expander中的子元素将显示或隐藏。箭头“展开”控件,使其子控件可见。
IsEnabled 默认是打开或者折叠起来,true就是展开 false折叠
ExpandDirection 展开的方向 down 向下展开
展开标签一般展开方向是上下,不设置高度
一般展开方向是左右,不设置宽度
VerticalAlignment= "top" HorizontalAlignment="Center" 展开宽随着内容进行自适应
- <Expander IsEnabled="True" ExpandDirection="Down" Width="200"
- BorderThickness="2" BorderBrush="Green"
- VerticalAlignment="Top" HorizontalAlignment="Center">
- <Expander.Header>
- 我的好友
- </Expander.Header>
- <StackPanel Orientation="Vertical">
- <CheckBox IsChecked="True" Margin="0,10">马云</CheckBox>
- <CheckBox Margin="0,10">马化腾</CheckBox>
- <CheckBox Margin="0,10">许家印</CheckBox>
- </StackPanel>
- </Expander>
Menu 表示一个 Windows 菜单控件,该控件可用于按层次组织与命令和事件处理程序关联的元素。
该 Menu 控件提供一个项列表,用于指定应用程序的命令或选项。 通常,单击菜单上的项会打开子菜单或导致应用程序执行命令。
子菜单是: <MenuItem></MenuItem> ,子菜单标签又可以添加子菜单项
MenuItem.Icon 设置菜单图标的,
MenuItem.Header 和header属性都可以设置标题
MenuItem.Template 自定义子菜单
FlowDirection="RightToLeft" 菜单的排布方向
LeftToRight 先排左边在拍右边
子菜单的事件:最常用的是通过click进行绑定点标题三击事件,通过界面命令进行绑定事件RoutedCommand
点击子菜单之后进行页面跳转,使用frame标签,navigate的方法进行跳转
路由:一个菜单对应的是一个以页面 这种对应关系就是路由
使用自定义RoutedUICommand(路由UI指令) 可以将一些预定义的操作绑定到应用程序的按钮或者菜单等控件上,
这些命令可以直接触发相应的事件,例如click、例如 click,keydown事件等
<Window.Resources>
<RoutedCommand x:Key="myCmd"></RoutedCommand>
</Window.Resources>
2 给"myCmd命令绑定什么样的操作
Executed事件,当页面切换的时候,就是等同于点击了子菜单项,
<Window.CommandBindings Command="{StaticResource myCmd}"
Executed ="CommandBinging_Executed">
</Window.CommandBindings>
- <Menu Height="40" VerticalAlignment="Top">
- <MenuItem Header="出入管理"
- FontFamily="华文行楷"
- FontSize="20"
- BorderThickness="0,0,1,0"
- BorderBrush="Gray"
- Height="40"
- Command="{StaticResource myCmd}">
-
- </MenuItem>
- <MenuItem Header="请假管理"
- FontFamily="华文行楷"
- FontSize="20"
- Height="40">
-
- </MenuItem>
- <!--FlowDirection="RightToLeft" 菜单的排布方向
- LeftToRight 先排左边在拍右边
- -->
- <MenuItem Header="考勤管理"
- FontFamily="华文行楷"
- FontSize="20"
- Height="40"
- FlowDirection="LeftToRight">
- <!--设置图标-->
- <MenuItem.Icon>
- <Image Width="40"
- Height="40"
- Source="https://img0.baidu.com/it/u=2374472521,3444438693">
-
- </Image>
- </MenuItem.Icon>
-
- <!--二级菜单-->
- <MenuItem Header="考勤打卡" FontFamily="宋体" Height="40" FontSize="20">
- <!--三级菜单-->
- <MenuItem>
- <MenuItem.Header>
- <TextBlock>2021班考勤打卡</TextBlock>
- </MenuItem.Header>
- </MenuItem>
-
- <Separator></Separator>
- <MenuItem>
- <MenuItem.Header>
- <TextBlock>2022班考勤打卡</TextBlock>
- </MenuItem.Header>
- </MenuItem>
- </MenuItem>
- <MenuItem Header="缺卡管理" FontFamily="宋体" Height="40" FontSize="20" Command="{StaticResource myCmd}">
-
- </MenuItem>
- </MenuItem>
自定义菜单项
- <MenuItem>
- <!--自定义菜单项的模板标签-->
- <MenuItem.Template>
- <!--ControlTemplate 控件模板TargetType作用到哪种类型标签上 -->
- <ControlTemplate TargetType="MenuItem">
- <TextBlock Name="Text"
- Text="原子弹管理"
- Padding="8"
- FontSize="20"
- FontFamily="华文行楷">
-
- </TextBlock>
- <!--Triggers 触发
- Property="IsMouseOver" 鼠标是否放上去
- Value="true" 放上去
- -->
- <ControlTemplate.Triggers>
- <Trigger Property="IsMouseOver"
- Value="true">
- <Setter TargetName="Text" Property="Background" Value="blue"></Setter>
- </Trigger>
-
- </ControlTemplate.Triggers>
- </ControlTemplate>
-
- </MenuItem.Template>
- </MenuItem>
- </Menu>
- <!--设置frame进行跳转
- NavigationUIVisibility="Hidden"因此自带前进和后退
- -->
- <Frame Name="f1" Margin="0,40,0,0" NavigationUIVisibility="Hidden"></Frame>
- </Grid>
p1页面
<Grid Background="Green">
<TextBlock>我是page1</TextBlock>
</Grid>
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。