随笔分类 - WPF
摘要:double height = SystemParameters.PrimaryScreenHeight; double width = SystemParameters.PrimaryScreenWidth;SystemParameters类详情: http://msdn.microsoft.com/zh-cn/library/system.windows.systemparameters.aspx
阅读全文
摘要:对于拖放操作有两个方面:源和目标。为了创建拖放源,需要在某个位置调用DragDrop.DoDragDrop()方法初始化拖放操作。此时确定拖动操作的源,搁置希望移动的内容,并指明充许什么样的拖放效果(复制,移动等)。 通常会在响应PreviewMouseDown或MouseDown事件时,调用DoDragDrop()方法。 而接收的元素需要将它的AllowDrop属性设置为true,还需要通过处理Drop事件来处理数据。前台代码:<Grid><Grid.RowDefinitions><RowDefinitionHeight="*"><
阅读全文
摘要:对于键盘事件(PreviewKeyDown,KeyDown,PreviewKeyUp,KeyUp)获取组合键等键盘信息比较容易1、KeyEventArgs对象包含一个KeyStates属性,该属性反映触发事件的键的属性2、KeyboardDevice属性为键 盘上的所有键提供了相同的信息,自然也提供了一个KeyboardDevice类的一个实例。它的属性包括当前是哪个元素具有焦点,以及当事件发生时按下了哪些修饰键(Modifiers)包括Shift、Ctrl、Alt键,并且使用位逻辑来检查它们的状态.privatevoidtextBox_KeyDown_1(objectsender,KeyEv
阅读全文
摘要:ColumnDefinition.Width的数据类型是:GridLength,所以就可以写为:column1.Width = new GridLength(1, GridUnitType.Star); //column1为一个实例如果ColumnDefinition的Width="Auto" 则在C#代码里就可以写为column1.Width =GridLength.Auto;这里不要搞混了,GridLength.Auto是一个结构,而new GridLength(1, GridUnitType.Star);是一个类下面来一个完整的布局代码,全部使用C#代码完成(练习的)
阅读全文
摘要:空白处理:<TextBox xml:space="preserve"> 哈哈哈哈 哈哈哈哈 哈哈哈哈 </TextBox>特殊字符:需要转义,例如 <TextBox> "你的就是我的,我的还是我的"</TextBox> 这时候就会报错,因为content中包含了双引号,使用"转义后变成<TextBox> "你的就是我的,我的还是我的"</TextBox>
阅读全文
摘要:为使用未在WPF命名空间中定义的类,需要把.net命名空间映射 到一个XML命名空间XAML有一个特殊的语法可用于完成这一工作。语法:xmlns:prefix="clr-namespace:Namespace;assembly=AssemblyName"prefix:是希望在XAML标记中用于指示命名空间的XML前缀。例如,XAML语言使用的x前缀。通常情况下,使用.net中其他的类型,前缀使用sys,而使用当前项目中的类型,前缀会使用local命名。Namespace:是完全限定的.net命名空间的名称。AssemblyName:是声明类型的程序集,没有.dll扩展名。这
阅读全文
摘要:本示例演示如何使用LinearGradientBrush类来绘制带有线性渐变的区域。在下面的示例中,Rectangle的Fill是用从黄色依次过渡到红色、蓝色和浅绿色的对角线性渐变来绘制的。XAML<!-- This rectangle is painted with a diagonal linear gradient. --> <Rectangle Width="200" Height="100"> <Rectangle.Fill> <LinearGradientBrush StartPoint="
阅读全文