WPF自学入门(六)WPF带标题的内容控件简单介绍
在WPF自学入门(二)WPF-XAML布局控件的文章中分别介绍StackPanel,WarpPanel,DockPanel,Grid,Canvas五种布局容器的使用,可以让我们大致了解容器可以使用在什么地方。今天我们就来简单了解一下WPF中的三个带标题的内容控件,分别是GroupBox,TabControl和Expander
一、GroupBox控件
这个控件可以叫做分组控件,可以把已经用布局控件包装好的一系列的控件放到里面分为一个组,例如,我们可以放入RadioButton进去,那么就不用设置GroupName也能对单选按钮进行分组了。这个GroupBox是带有圆角的和一个标签和内容的控件,大概是这样子的:
创建一个GroupBox就是这么简单。好了,这就是GroupBox的使用。当然,Header可以使用更复杂的逻辑,这就要发挥了。控件使用注意事项:我刚开始使用WPF时在使用GroupBox做登录框的布局,发现放一个标签后无法再次放标签。后面想了想在GroupBox控件上放布局控件StackPanel,在放多个控件就没有问题了。所以请大家注意放多个控件时,需要放布局控件在放需要常规控件。
二、TabControl控件
TabItem是代表TabControl中的一页,在一个TabControl中需要多少页就要靠自己添加。默认的页签是字符串,例如:页签一,看一下TabControl长什么样
页签可以是字符串,也可以是图片。接下来,我们可以将页签一的文字更改为图片。看看实际效果
只添加图片无法满足实际设计需要,WPF中的TabControl也可以弄成图文形式的组合。看看效果图
这是默认模式的,选择栏是顶部,可以设置为侧边显示,可以通过设置TabStripPlacement属性有四种模式:Left,Right,Bottom,Top(默认)。
三、Expander控件
Expander控件是可扩展的控件,它内容默认开始是隐藏好的,很像帮助界面那样,不会在界面给出全部的信息,全部隐藏好,如果你想知道哪个方面的东西,就扩展哪一个Expander,系统默认的样式个人觉得不是很好的,我们可以通过自定义模板来改进样式,首先,一起来看一下Expander控件的使用方法。
我定义了4个Expender,分别是不同方向的展开方式,注意展开方向的使用ExpandDirection控制着在,然后内容各自镶嵌的自己的东西,就是这么简单,最后,看一下程序结果。
到这里已经简单介绍了三个控件的基本使用,大家应该都知道了三个带标题的内容控件的使用,其实操作一遍后会感觉很简单。WPF是编写程序的核心回到了数据驱动程序的模式上面。下一篇我们进入数据驱动的学习,初识Binding。
WPF自学入门(六)WPF带标题的内容控件简单介绍的更多相关文章
- ASP.NET AJAX入门系列(6):UpdateProgress控件简单介绍
在ASP.NET AJAX Beta2中,UpdateProgress控件已经从“增值”CTP中移到了ASP.NET AJAX核心中.以下两篇关于UpdateProgress的文章基本翻译自ASP.N ...
- WPF之核心面板(容器)控件简单介绍
一.Canvas 1.官方表述:定义一个区域,在该区域中可以使用相对于该区域的坐标显式定位子元素. 2.对于canvas 的元素的位置,是靠控件的大小及Canvas.Top.Canvas.Left.C ...
- wpf 控件简单介绍
- ASP.NET AJAX入门系列(10):Timer控件简单使用
本文主要通过一个简单示例,让Web页面在一定的时间间隔内局部刷新,来学习一下ASP.NET AJAX中的服务端Timer控件的简单使用. 主要内容 Timer控件的简单使用 1.添加新页面并切换到设计 ...
- WPF 入门笔记之控件内容控件
一.控件类 在WPF中和用户交互的元素,或者说.能够接受焦点,并且接收键盘鼠标输入的元素所有的控件都继承于Control类. 1. 常用属性: 1.1 Foreground:前景画刷/前景色(文本颜色 ...
- WPF 10天修炼 第五天- 内容控件
WPF内容控件 在WPF中,所有呈现在用户界面上的对象都称为用户界面元素.但是只有派生自System.Windows.Controls.Control类的对象才称为控件.内容控件通常是指具有Conte ...
- WPF自学入门(三)WPF路由事件之内置路由事件
有没有想过在.NET中已经有了事件机制,为什么在WPF中不直接使用.NET事件要加入路由事件来取代事件呢?最直观的原因就是典型的WPF应用程序使用很多元素关联和组合起来,是否还记得在WPF自学入门(一 ...
- WPF自学入门(十一)WPF MVVM模式Command命令
在WPF自学入门(十)WPF MVVM简单介绍中的示例似乎运行起来没有什么问题,也可以进行更新.但是这并不是我们使用MVVM的正确方式.正如上一篇文章中在开始说的,MVVM的目的是为了最大限度地降低了 ...
- WPF自学入门(十二)WPF MVVM模式提取函数
我们平时在写代码时为了不重复写代码,会进行复制代码或者写通用方法.今天我们就来把上传做的函数提取成为通用的方法调用.把上次写的函数提取为两个主要的文件:ObserableObject和RelayCom ...
随机推荐
- 03-PHP-memcached
[安装memcached] [安装 libevent] $ tar zxvf libevent-2.0.20-stable.tar.gz $ cd libevent-2.0.20-stable/ $ ...
- Go学习笔记02-源码
第二部分 源码 基于 Go 1.4,相关文件位于 src/runtime 目录.文章忽略了 32bit 代码,有兴趣的可自行查看源码文件.为便于阅读,示例代码做过裁剪. 1. Memory Alloc ...
- Vue.js源码——事件机制
写在前面 因为对Vue.js很感兴趣,而且平时工作的技术栈也是Vue.js,这几个月花了些时间研究学习了一下Vue.js源码,并做了总结与输出.文章的原地址:https://github.com/an ...
- 案例分析——BAT业务https化经历
一.前言 通常的http访问会遭到中间人攻击.网络嗅探等普通用户感知不到的恶意行为,这些行为会篡改用户浏览页面引导用户访问非法网站.抓取用户的上网行为以及个人信息.严重的会造成用户 ...
- CodeForces 586D
题意略. 将人的移动分为3步,第一步向右,第二步是行之间的变换,第三步是向右走2步,三步加在一起算作是一次移动,计入判重数组. 在第一步时有一个特殊情况:已经越过最右边的边界线,这时graph[x][ ...
- laravel框架基础知识点
一.数据库:DB 1.db查 DB::table('msg')->where('id','>',$id)->get() 查询单行 DB::table(' ...
- Python实现二分查找
老生常谈的算法了. #!/usr/bin/python # -*- coding:utf-8 -*- # Filename: demo.py # 用python实现二分查找 def binarySea ...
- Five nines
Five nines, commonly taken to mean "99.999%", may refer to: 高可用 High availability of serv ...
- C#中windows服务安装方法
关于windows服务的编写方法,参考:http://www.cnblogs.com/sorex/archive/2012/05/16/2502001.html 我这里就补充一下安装方法. 1.首先打 ...
- 第1章 PCI总线的基本知识
PCI总线作为处理器系统的局部总线,主要目的是为了连接外部设备,而不是作为处理器的系统总线连接Cache和主存储器.但是PCI总线.系统总线和处理器体系结构之间依然存在着紧密的联系. PCI总线作为系 ...