wpf menuitem 简约显示的 template样式

<ControlTemplate x:Key="MenuItemControlTemplate1" TargetType="{x:Type MenuItem}">
<Grid SnapsToDevicePixels="True">
<Border x:Name="OuterBorder" BorderThickness="0,0,0,0.7" BorderBrush="White"/>
<DockPanel>
<TextBlock x:Name="TextContent" HorizontalAlignment="Center">
<ContentPresenter ContentTemplate="{TemplateBinding HeaderTemplate}" Content="{TemplateBinding Header}" ContentStringFormat="{TemplateBinding HeaderStringFormat}" ContentSource="Header" Margin="{TemplateBinding Padding}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</TextBlock>
</DockPanel>
<Popup x:Name="PART_Popup" AllowsTransparency="True" Margin="0" Focusable="False" HorizontalOffset="1" IsOpen="{Binding IsSubmenuOpen, RelativeSource={RelativeSource TemplatedParent}}" PopupAnimation="{DynamicResource {x:Static SystemParameters.MenuPopupAnimationKey}}" Placement="Bottom" VerticalOffset="-1">
<Themes:SystemDropShadowChrome x:Name="Shdw" Color="#535865">
<Border x:Name="SubMenuBorder" BorderBrush="#FF959595" BorderThickness="0">
<ScrollViewer x:Name="SubMenuScrollViewer" Margin="0" Padding="0" BorderThickness="0" Style="{DynamicResource {ComponentResourceKey ResourceId=MenuScrollViewer, TypeInTargetAssembly={x:Type FrameworkElement}}}">
<Grid RenderOptions.ClearTypeHint="Enabled" ShowGridLines="True" Background="#535865">
<StackPanel IsItemsHost="True"
KeyboardNavigation.DirectionalNavigation="Cycle" Width="100"/>
</Grid>
</ScrollViewer>
</Border>
</Themes:SystemDropShadowChrome>
</Popup>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsSuspendingPopupAnimation" Value="True">
<Setter Property="PopupAnimation" TargetName="PART_Popup" Value="None"/>
</Trigger>
<Trigger Property="IsHighlighted" Value="True">
<Setter Property="Foreground" TargetName="TextContent" Value="#54FFFF"/>
<Setter Property="BorderBrush" TargetName="OuterBorder" Value="Red"/>
<Setter Property="BorderThickness" TargetName="OuterBorder" Value="1"/>
</Trigger>
<Trigger Property="HasDropShadow" SourceName="PART_Popup" Value="True">
<Setter Property="Margin" TargetName="Shdw" Value="0,0,5,5"/>
<Setter Property="Color" TargetName="Shdw" Value="#71000000"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>

效果图如下

原文地址:https://www.cnblogs.com/tianmochou/p/11392782.html

时间: 2024-10-30 09:12:59

wpf menuitem 简约显示的 template样式的相关文章

wpf 中DataGrid 控件的样式设置及使用

本次要实现的效果为: 这个DataGrid需要绑定一个集合对象,所以要先定义一个Experience类,包含三个字段 /// <summary> /// 定义工作经历类 /// </summary> public class Experience { /// <summary> /// 获取或设置工作的起始时间 /// </summary> public string Start { get; set; } /// <summary> /// 获

WPF 文字换行TextWrapping 显示不全用省略号TextTrimming 显示不全弹提示内容ToolTip

原文:WPF 文字换行TextWrapping 显示不全用省略号TextTrimming 显示不全弹提示内容ToolTip [TextBlock] 换行? ? TextWrapping="Wrap" 内容显示不全时显示省略号,如 "AAA..."? ??TextTrimming="CharacterEllipsis" //以单词边界做截断 鼠标提示? ?<ToolTip> ? 例:?? TextBlock不允许换行,超出后显示省略号截

WPF 重写微调自带的样式,ListView、DataGrid、TreeView等所有控件的默认样式

原文:WPF 重写微调自带的样式,ListView.DataGrid.TreeView等所有控件的默认样式 不知道各位在开发中有没有遇到这样的窘迫,开发一个UI,设计给出的效果图和自带的样式的区别很大,然后有的样式通过属性是修改不了的,比如TreeView的子项TreeViewItem,想完全透明背景色就做不到,只有重写Template,然而重写了模板发现很多默认的功能失效了,等等一些列问题:又比如需要重新DataGrid,的DataGridRowHeader模板,又不知这个模板哪些属性必须要给

drupal中根据不同的内容类型节点显示不同的样式

在template.tpl中添加如下代码: function lee_preprocess_node(&$variables) { if ($variables['view_mode'] == 'full' && node_is_page($variables['node'])) { $variables['classes_array'][] = 'node-full'; } } 在template文件下建立模板文件node--article.tpl.php 最后清除下缓存即可!

WPF DatePicker默认显示当前日期,格式化为年月日(转)

WPF DatePicker默认显示当前日期,格式化为年月日 2018年08月08日 11:23:00 weixin_33922670 阅读数:253 原文:WPF DatePicker默认显示当前日期 WPF的日历选择控件默认为当前日期,共有两种方法,一种静态,一种动态. 静态的当然写在DatePicker控件的属性里了,动态的写在对应的cs文件里,具体请看下面. 1.方法一: myDatePicker.Text = DateTime.Today.ToLongDateString(); 2.方

WPF 动态添加控件以及样式字典的引用(Style introduction)

原文:WPF 动态添加控件以及样式字典的引用(Style introduction) 我们想要达到的结果是,绑定多个Checkbox然后我们还可以获取它是否被选中,其实很简单,我们只要找到那几个关键的对象就可以了. 下面是Ui,其中定义了一个WrapPanel来存放CheckBox,还有两个按钮,用于测试相关功能. <Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft.c

wpf 窗体中显示当前系统时间

先看一下效果: 这其实是我放置了两个TextBlock,上面显示当前的日期,下面显示时间. 接下来展示一下代码: 在XAML中: <StackPanel Width="205"                    Margin="0,0,57,0"                    HorizontalAlignment="Right">            <TextBlock Height="Auto&qu

Html遮罩层的显示(主要在于样式设置)

<html> <head> <title></title> <style type="text/css"> #divshow { position: fixed; /*相对于浏览器窗口进行定位*/ left: 0px; top: 0px; width: 100%; height: 100%; opacity:0.6; /* 透明度*/ background:red; display:none; position:absolut

element表格的坑(2)--一套表格根据状态显示不同的样式,v-if判断内容显示不全,样式发生改变

问题:一套表格用v-if  v-else-if  v-else判断显示不同的样式和字段  会出内容显示不全,样式发生改变 方法:就是在v-if v-else-if v-else  后面加key就好了,要让这个key不重复 原文地址:https://www.cnblogs.com/Jerry1208/p/12597692.html