做一个超市通信息管理系统,用WPF来做。搭了一个主页面
来说一下结构,主要有DockPanel布局(停靠布局)+Grid布局(网格布局)来做的。这里用了两个DockPanel.Dock="Top"来做顶部菜单和系统名称,在来一个DockPanel.Dock="Bottom"来放公司名称、登录名称和系统时间,在来一个DockPanel.Dock="Left"来放功能导航。右边来个网格布局发我的选项卡。
这就是我设置的主页面了。
自定义TabItem的资源和样式。
资源里的定义视觉树和触发器
<!--定义视觉树-->
<Grid Cursor="ScrollAll">
<!--形状绘图:椭圆-->
<!-- 模板绑定(TemplateBinding):使用TemplateBinding扩展把TabItem的Stroke设置为控件的Stroke。-->
<Ellipse Width="18" Height="18" HorizontalAlignment="Center" VerticalAlignment="Center" >
<Ellipse.Fill>
<ImageBrush ImageSource="Image\png-2067.png"></ImageBrush>
</Ellipse.Fill>
</Ellipse>
<TextBlock x:Name="text" FontSize="10" Text="X" Opacity="0"HorizontalAlignment="Center"
VerticalAlignment="Center"></TextBlock>
</Grid>
<!--定义触发器-->
<ControlTemplate.Triggers>
<Trigger Property="IsPressed" Value="true">
<!--设置背景色-->
<Setter Property="Background" Value="#FFB3DDFF"></Setter>
<!--设置字体颜色:白色-->
<Setter TargetName="text" Property="Foreground" Value="White"></Setter>
</Trigger>
</ControlTemplate.Triggers>
左边的菜单困扰了我,怎么在button来放我的图片和文字。如下图:
本来想直接在button里加文字和图片,但是它报错说是已多次设置属性“content”
这个问题有多种解决方法,要看你的项目适合哪种解决方法。
这里其实是要重写button按钮的,因为我这个项目有好多的这种按钮(图上文下和图左文右),所以重写button按钮比较好搭页面。
因为我对重写按钮有一点熟悉,所以我不想重写按钮。
我在button按钮里加了DockPanel,也可以图片在左边文字在右边。
<Button Tag="1" Name="基本信息区" HorizontalAlignment="Stretch" VerticalAlignment="Top" Height="38" Background="#FFF0FFF3" FontSize="15" Foreground="#FF4CD061" FontFamily="华文行楷" Margin="0,10,0,0" Click="基本信息_Click">
<DockPanel >
<Image Margin="2" Source="Image\MenuIcon\png-1752.png" Width="50" HorizontalAlignment="Left" />
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center" Text="基本信息"/>
</DockPanel>
</Button>
这样子我的主页面就可以了,但是功能还没有做。