WPF 入门笔记之控件内容控件
一、控件类
在WPF中和用户交互的元素,或者说。能够接受焦点,并且接收键盘鼠标输入的元素所有的控件都继承于Control类。
1. 常用属性:
1.1 Foreground:前景画刷/前景色(文本颜色)
1.2 Background:背景画刷/背景色
//使用RBG设置颜色
Btn_1.Foreground = new SolidColorBrush(Color.FromRgb(, , ));
//使用颜色枚举设置颜色
Btn_1.Foreground = new SolidColorBrush(Colors.DarkGoldenrod);
//使用系统颜色枚举
Btn_1.Background = SystemColors.ActiveCaptionBrush;
1.3 FontFamily:设置字体
当FontFamily设置多个值表示,如果第一个字体不存在则使用第二个字体以此类推
<Button Name="Btn_1" FontFamily="Arial,Calibri,Cambria" >
<Button.Content>
this is button
</Button.Content>
</Button>
系统上安装的字体:Fonts.SystemFontFamilies
foreach (var item in Fonts.SystemFontFamilies)
{
lstBox_Message.Items.Add(item.Source);
}
设置任何元素的字体属性,属性的值会向下继承。如果给Window顶层元素设置字体,那么这个window下的所有元素都会继承这个字体
1.4 FontSize:字体大小
1.5 FontStyle:字体样式(斜体)
1.6 FontWeight:字体粗细
1.7 FontStretch:字体可以拉伸的角度
<StackPanel Orientation="Horizontal">
<Button Name="Btn_1" BorderBrush="Black" BorderThickness="2" Content="Border"></Button>
<Button Name="Btn_2" Content="FontStyle" FontStyle="Oblique" FontWeight="Black"></Button>
<Button Name="Btn_3" Content="FontWeight" FontStyle="Oblique"></Button>
<Button Name="Btn_4" Content="FontSize" FontSize="15"></Button>
<Button Name="Btn_5" Content="Fimaly" FontFamily="Arial"></Button>
</StackPanel>
1.8 BorderThickness:边框的大小
1.9 BorderBrush:边框画刷(边框颜色)
<Button Name="Btn_1" BorderBrush="Black" BorderThickness="2">
this is button
</Button>
1.10 Padding:内边距
1.11 HorizontalContentAlignment:内容水平方向的位置
1.12 VerticalContentAlignment:内容垂直方向的位置
1.13 Template:模板
1.14 IsTabStop:否将某个控件包含在 Tab 导航中
1.15 TabIndex:决定在用户使用 Tab 键在控件中导航时元素接收焦点的顺序
二、内容控件
内容控件,它可以包含显示一块内容。只能包含当个(只能包含的一个子元素)。和布局容器不同,布局容器可以不限制的包含子元素。内容控件都继承于ContentControl类
1. Content属性
Conent 只接收单一的对象(任何类型)
<StackPanel>
<!--直接设置Content属性-->
<Button Content="button" Margin="5"></Button>
<!--嵌套一个子元素-->
<Button Margin="5">
<TextBlock>this is TextBlock</TextBlock>
</Button>
<!--包含一个布局元素来实现嵌套多个子元素-->
<Button Margin="5">
<StackPanel>
<Label BorderBrush="Black" BorderThickness="1">this is Label</Label>
<Label BorderBrush="Aquamarine" BorderThickness="1" >this is Label</Label>
<Label BorderBrush="Beige" BorderThickness="1">this is Label</Label>
</StackPanel>
</Button>
</StackPanel>
2. 设置对齐方式和ToolTip
HorizontalContentAlignment:水平对齐
VerticalContentAlignment:垂直对齐
ToolTip:鼠标移动到该元素时,显示提示内容
<Button Content="button" ToolTip="ToolTip case" Margin="5" HorizontalContentAlignment="Left" ></Button>
<Button Content="button" Margin="5" HorizontalContentAlignment="Right" ></Button>
3. 带标题的内容控件
3.1 GroupBox
<GroupBox Header="GroupBox">
<StackPanel>
<RadioButton Margin="2">RadioButton1</RadioButton>
<RadioButton Margin="2">RadioButton2</RadioButton>
<RadioButton Margin="2">RadioButton3</RadioButton>
</StackPanel>
</GroupBox>
3.2 TabItem
<TabControl>
<TabItem Header="TabItem"></TabItem>
<TabItem Header="GroupBox"></TabItem>
<TabItem Header="Expander"></TabItem>
</TabControl>
3.3 Expander
<StackPanel>
<Expander Header="Expander">
<StackPanel>
<RadioButton Margin="2">RadioButton1</RadioButton>
<RadioButton Margin="2">RadioButton2</RadioButton>
<RadioButton Margin="2">RadioButton3</RadioButton>
</StackPanel>
</Expander>
</StackPanel>
WPF 入门笔记之控件内容控件的更多相关文章
- WPF入门(四)->线形区域Path内容填充之填充图(ImageBrush)
原文:WPF入门(四)->线形区域Path内容填充之填充图(ImageBrush) 前面我们提到了LinearGradientBrush可以用来画渐变填充图,那么我们同时也可以使用ImageBr ...
- WPF入门(四)->线形区域Path内容填充之渐变色(LinearGradientBrush)
原文:WPF入门(四)->线形区域Path内容填充之渐变色(LinearGradientBrush) 前面我们介绍到,Path对象表示一个用直线或者曲线连接的图形,我们可以使用Path.Data ...
- WPF知识点全攻略05- XAML内容控件
此处简单列举出布局控件外,其他常用的控件: Window:WPF窗口 UserControl:用户控件 Page:页 Frame:用来浏览Page页 Border:嵌套控件,提供边框和背景. Butt ...
- WPF学习笔记(1)——image控件图片不显示的问题
说明(2017-6-7 16:08:35): 1. 本来想用winform的,用winform就没这么多破事了. 2. 不过项目要用WPF,拉出一个mediaelement控件,视频正常显示. 3. ...
- WPF 入门笔记之事件
一.事件路由 1. 直接路由事件 起源于一个元素,并且不能传递给其他元素 MouserEnter 和MouserLeave 就是直接事件路由 2. 冒泡路由事件 在包含层次中向上传递,首先由引发的元素 ...
- WPF 入门笔记之布局
一.布局原则: 1. 不应显示的设定元素的尺寸,反而元素可以改变它的尺寸,并适应它们的内容 2. 不应使用平布的坐标,指定元素的位置. 3. 布局容器和它的子元素是共享可以使用的空间 4. 可以嵌套的 ...
- WPF 入门笔记之基础
一.创建WPF程序 1. App.xaml 相当于窗体的配置文件 2. xmlns:xml名称空间的缩写 xmlns="http://schemas.microsoft.com/winfx/ ...
- 【WPF学习】第二十章 内容控件
内容控件(content control)是更特殊的控件类型,它们可包含并显示一块内容.从技术角度看,内容控件时可以包含单个嵌套元素的控件.与布局容器不同的是,内容控件只能包含一个子元素,而布局容器主 ...
- WPF进阶技巧和实战03-控件(1-控件及内容控件)
所有控件都继承自System.Windows.Controls.Control类,这个类添加一些基本结构: 设置控件内容对齐方式 (HorizontalContentAlignment,Vertica ...
随机推荐
- C# WindowsPrincipal(Windows规则)的使用
using System;using System.Collections.Generic;using System.Linq;using System.Security.Principal;usin ...
- C#热敏打印图片 串口打印图片
原文:C#热敏打印图片 串口打印图片 如图,一步一步慢慢调出来的 //串口通信类 public System.IO.Ports.SerialPort serialPort = null; serial ...
- WPF RichTextBox 导出与加载
private void Button_Click(object sender, RoutedEventArgs e) { string savePth = System.IO.Path.Combin ...
- laravel在wamp中输入地址后总是无法访问
在wamp中的apache中conf的httpd.conf #LoadModule rewrite_module modules/mod_rewrite.so 改为 LoadModule rewrit ...
- xen学习(一)
添加镜像源 [root@xen xen]# cat /etc/yum.repos.d/xen.repo [xen] name=xenserver baseurl=http://mirrors.163. ...
- Qt 开发WEB Services客户端代码(使用gSoap)
1. 首先下载gSoap开发包 http://sourceforge.net/projects/gsoap2 目录包含 wsdl2h.exe( 由wsdl生成接口头文件C/C++格式的头文件 ) ...
- FrieMonkey获取手机的IMSI等信息
procedure THeaderFooterForm.FormCreate(Sender: TObject); var TelephonyManager: JTelephonyManager; Te ...
- Qt实现小功能之列表无限加载(创意很不错:监听滚动条事件,到底部的时候再new QListWidgetItem)
概念介绍 无限加载与瀑布流的结合在Web前端开发中的效果非常新颖,对于网页内容具备较好的表现形式.无限加载并没有一次性将内容全部加载进来,而是通过监听滚动条事件来刷新内容的.当用户往下拖动滚动条或使用 ...
- Memcached在Linux系统下的安装和PHP开启 Memcached的 扩展 超级解决方案
[项目背景]:阿里云ECS服务器,Linux(centos7.2 64位),环境部署使用的是阿里云一键安装包(LAMP)等 [项目需求]:linux安装memcached 和php开启Memcache ...
- asp.net mvc中使用jquery H5省市县三级地区选择控件
地区选择是项目开发中常用的操作,本文讲的控件是在手机端使用的选择控件,不仅可以用于实现地区选择,只要是3个级别的选择都可以实现,比如专业选择.行业选择.职位选择等.效果如下图所示: 附:本实例asp. ...