摘要: Slider控件,讲行通俗一点就是我们很常见的滑块,控件的外观上显示一系例刻度值,并存在一个可以被拖动的滑块,用户可以通过拖动滑块来控制控件的值。如下图所示,是Windows系统的音量调节滑块。下图所示为QQ音频聊天设置窗口中的音量调节滑块。这样,我们就以很直观的方式认识了Slider控件。接下来看看该控件的构成:然后,查看Slider类的定义,从中找出主体部分。[LocalizabilityAttribute(LocalizationCategory.Ignore)][TemplatePartAttribute(Name = "PART_SelectionRange", 阅读全文
posted @ 2011-11-21 20:30 东邪独孤 阅读(1344) 评论(0) 推荐(1)
摘要: 关键点:Track控件没有默认模板,它包括三个部分DecreaseRepeatButton——这是一个RepeatButton即滑块左(上)的部分;IncreaseRepeatButton——同上,即滑块右(下)部分;Thumb——很明显了,这是拖动的滑块,请参考前面的文章。<Window x:Class="WpfApplication1.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.mi 阅读全文
posted @ 2011-11-21 20:21 东邪独孤 阅读(568) 评论(0) 推荐(0)
摘要: 关键点:要设置ListView的行样式,设置Listview的ItemContainerStyle属性,但在本例中,由于我把样式应用于所有的ListViewItem,故不用设置该属性。<Window x:Class="Wpf_GridHeaderStyle_sample.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" x 阅读全文
posted @ 2011-11-17 22:09 东邪独孤 阅读(771) 评论(0) 推荐(1)
摘要: 上一篇文章简单说了一下Expander控件,本文将编写一个自义模板的Expander控件,如下图所示:<Window x:Class="Expander_Sample2.Window1" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="Window1" Height="300" Wid 阅读全文
posted @ 2011-11-17 21:55 东邪独孤 阅读(444) 评论(0) 推荐(0)
摘要: 欢迎加入.NET技术交流群:189931386Expander是一个可以展开和折叠的控件,它包含两部分——标头和内容。标头通Header属性来设置,内容通过Conent属性设置,如下面一个简单的例子: <Expander ExpandDirection="Down" Width="96"> <Expander.Header> <TextBlock Text="标题" FontWeight="Bold"/> </Expander.Header> <Expander 阅读全文
posted @ 2011-11-14 21:33 东邪独孤 阅读(508) 评论(0) 推荐(0)
摘要: 上一篇文章中谈到了BulletDecorator控件,就是为自定义CheckBox控件的模板做准备,因为CheckBox需要比较严格的布局,正好,BulletDecorator控件就合适了,该控件的布局是有项目列表,排列起来好办很多了。第一步,先建立一项资源,就是控件的聚焦样式,即当你在窗体中不断按Tab键使控件获取焦点时的样式,后面要用到。 <!--当控件获得键盘焦点时的样式--> <Style x:Key="FocusStyle"> <Setter Property="Control.Template"> < 阅读全文
posted @ 2011-11-13 21:04 东邪独孤 阅读(404) 评论(0) 推荐(1)
摘要: 这是一个很简单的控件,无非就是控制项目的布局方式,其布局方式只有两种:从左到右,从右到左。一、从左到右二、从右到左布局方向由FlowDirection属性来决定,所以我说这个控件非常简单上面的截图的XAML如下: <BulletDecorator HorizontalAlignment="Center" Background="#AACC01" VerticalAlignment="Center" Height="21" Width="76" FlowDirection="Rig 阅读全文
posted @ 2011-11-13 11:58 东邪独孤 阅读(1651) 评论(0) 推荐(0)
摘要: ProgressBar控件与传统WinForm使用方法完全一样,我们只需关注:Minimum——最小值,默认为0;Maximum——最大值,默认为100.Value——当前值。关键是它的控件模板,因为系统的默认主题不好看,很多时候我们是需要自定义样式和模板。老方法,先看定义:[TemplatePartAttribute(Name = "PART_Track", Type = typeof(FrameworkElement))][TemplatePartAttribute(Name = "PART_Indicator", Type = typeof(Fra 阅读全文
posted @ 2011-11-12 21:59 东邪独孤 阅读(487) 评论(0) 推荐(0)
摘要: 这个控件,真不好介绍,MSDN上也是草草几句,反正就是可以让用户拖动的玩意儿,但是,你会发现,当你在该控件上拖动时,它没有反响,也就是说这个东西默认不做任何操作的,它是赖在那里什么都不干,除非你去踢上脚。而且,这个控件就像一个四方鸭,你踢一脚它就前进一步,你不踢,它又在那里尸位素餐,什么都不干了。还是用一个例子来说明吧,不过,还是先说一下重要的东西。Thumb有几个核心事件,都是与拖动有关。往深一层想,它是什么?对,就是我们常见的滚动条里面的滑块,就是我们在网格里面可以拖动的分隔线,就是窗口右下角用于通过拖动来改变窗口大小的小东西。Thumb的核心事件有:DragStarted——当你在它上面 阅读全文
posted @ 2011-11-11 23:23 东邪独孤 阅读(641) 评论(0) 推荐(0)
摘要: 欢迎加入微群 DotNet中国:http://qun.t.qq.com/67176884在WPF中获Listview中选中的项,与WinForm里面有着很大的区别,要亲身去研究一下在WPF中如果处理,其实也不难,来,下面我们一起来通过一个简单的示例来感悟一下吧。第一步就是建立一个WPF应用程序项目,这个不用描述了,节省了31个字。第二步,为了实现数据绑定,先写一个简单的员工类,包含三个属性——姓名、年龄、城市。 public class Emp { public string Name { get; set; } public int Age { get... 阅读全文
posted @ 2011-11-08 20:59 东邪独孤 阅读(1375) 评论(0) 推荐(0)