WPF学习笔记-如何按ESC关闭窗口】的更多相关文章

如何按ESC关闭窗口? 在InitializeComponent();下面增加KeyDown事件,如: public ModifyPrice() { InitializeComponent(); this.KeyDown += ModifyPrice_KeyDown; } private void ModifyPrice_KeyDown(object sender, KeyEventArgs e) { if (e.Key == Key.Escape)//Esc键 { this.Close();…
原文:WPF 学习笔记-设置属性使窗口不可改变大小 调整Windows下的ResizeMode属性: ResizeMode = NoResize Resize属性是控制Windows是否可以改变大小,怎样改变大小的属性.ResizeMode的所有枚举如下:   成员名称 说明   NoResize 无法调整窗口的大小.标题栏中不显示“最小化”和“最大化”按钮.   CanMinimize 只能最小化和还原窗口.同时显示“最小化”和“最大化”按钮,但只有“最小化”按钮处于启用状态.   CanRe…
原文:WPF 学习笔记-在WPF下创建托盘图标 首先需要在项目中引用System.Windows.Forms,System.Drawing; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.…
WPF学习笔记-用Expression Design制作矢量图然后导出为XAML 第一次用Windows live writer写东西,感觉不错,哈哈~~ 1.在白纸上完全凭感觉,想象来画图难度很大,尤其是象我这样毫无美术基础,毫无艺术细胞的人而言.因此可以找个参照物,比如一张数码照片,对着这个图片描,可以大体上把物体的轮廓描出来. 2.Ctrl+C然后Ctrl+V,在Expression Design中添加一张位图,注意,此时Design会自动新建一个图层(layer),双击修改图层名为Mou…
原文:WPF学习笔记(8):DataGrid单元格数字为空时避免验证问题的解决 如下图,在凭证编辑窗体中,有的单元格不需要数字,但如果录入数字后再删除,会触发数字验证,单元格显示红色框线,导致不能执行其他操作. Xaml代码如下: <DataGridTextColumn Header=" ElementStyle="{StaticResource dgCellRigth}"/> 解决思路是用转换器Converter代替StringFormat: Xmal主要代码:…
1.菜单:普通菜单.上下文菜单(ContextMenu) <Menu HorizontalAlignment="Left" Height="20" VerticalAlignment="Top" Width="517"> <MenuItem Header="文件"></MenuItem> <MenuItem Header="编辑"><…
(应博友们的需要,在文章评论处有源码链接地址,以及WPF学习资料.工具等,希望对大家有所帮助) ...... 承接系列五 上一节讲了,已经把数据保存到数据库并且删除数据,本讲是把已经存在的数据从数据库里读取出来,显示在页面上. 主页面后台代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Window…
原文:http://blog.csdn.net/leftfist/article/details/32349731 矫枉过正,从一个极端走向另一个极端.MVVM模式,View只负责呈现,虽然也有后台代码,但基本上就是摆设,VM接管了一切的逻辑处理. 那么,现在,大能的VM已经完成了所有的事情,这个窗口V如何才能自动关闭呢? 据我目前少得可怜的WPF知识可知,有两种方案: 方案一.利用View里的IsEnable属性. 原理是这样的: 1.UI中的IsEnabled绑定VM中的属性 2.UI的后台…
代码部分 <Style x:Key="for_noresize_window" TargetType="{x:Type Window}"> <Setter Property="AllowsTransparency" Value="true"/> <Setter Property="Background" Value="Transparent"/> &l…
前几天我在CSDN扔了一个问题,基本描述一下:写了一段这样的代码,来实现获取Control的template,却发现一个这样的问题,就是当我打开了一个window以后,手动调用Close(),窗口的确是消失了,但是当我关闭了主窗口以后,却发现程序没有退出. private void ControlTypeSelectingBox_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { Type type = Con…
一.概述 了解XAML的基本之后,进入Layout的学习.Layout,即布局,可能需要用到几种不同的容器.每一种容器都有各自的逻辑.在用户界面的设计过程中,很多时候是在想办法使得界面更加吸引.实在.便捷.然而,如何使得布局能够很好地适应不同窗口是一个难点.以往,开发者使用基于坐标的方法定位布局和控件.如今,WPF虽然也可以使用这种方法,但是通常更好的做法是创建能够适应不同内容.语言和显示器分辨率的方法.下面简单介绍基本的布局.容器,并举几个例子加深了解. 二.几个概念 1.一个WPF窗体只能有…
刚刚接触WPF,微软的一套东西.WPF最大的特点就是UI设计与代码逻辑的完全剥离.这样美工和程序员的分工就变得非常清楚.因为界面和程序的耦合度很低,也增加的代码的灵活性和可重用性. 微软为WPF的UI设计提供了类似PS的软件Blend Expression,可以很方便的“画”界面.界面设计基于XAML,一种面向对象设计的标签式语言.与传统的WinForm开发比较,WPF最大的特点就是使用了数据绑定的机制.WPF的理念是以数据为中心,界面只是用于单纯的展示数据用的,要做什么逻辑修改都应该作用在数据…
WPF的XAML提供了一系列功能强大.用法复杂的 mini-language 来描述可扩展应用程序标记语言 (XAML) 中的几何路径.如下所示: XAML <Canvas>   <Path Stroke="Black" Fill="Gray"     Data="M 10,100 C 10,300 300,-200 300,100" /> </Canvas> Command Name Description…
参考文献: http://msdn.microsoft.com/zh-cn/library/ms752059(v=vs.110).aspx <Pro WPF 4.5 in C# > 一.XAML概况 1.XAML是什么 XAML (Extensible Application Markup Language ,读作zammel) 是用于实例化.Net的一种声明性标记语言. 2.XAML有什么用 当使用Visual Studio编写WPF程序时,你设计的Window不是转化成代码,而是转换成一系…
最近在做WPF方面的内容,由于好多属性不太了解,经常想当然的设置,经常出现自己未意料的问题,所以感觉得梳理下. ps:先补下常用控件的类结构,免得乱了 .NET Framework 4.5 Using System.Windows.Controls; 这样就很清楚了,先总结下FrameworkElement 类: “为 Windows Presentation Foundation (WPF) 元素提供 WPF 框架级属性集.事件集和方法集. 此类表示附带的 WPF 框架级实现,它是基于由 UI…
最近,开始学习WPF,其UI设计完全颠覆了传统的设计理念,为程序员提供了极大的自由发挥空间,让我为之惊叹,且为之着迷.然而,WPF在国内的热度却并不高,大部分贴子都是2012年以前的,出版的图书也很少,参考的资料不多.为了避免在以后的编程中少走弯路,也防止自己遗忘,在此记录学习过程遇到的一些问题和感悟. 问题:在一个表格中录入数据,当在某列单元格中录入时,弹出一个提示框,并根据录入字符进行逐键过滤.效果如下图: 首先想到是用TextChanged事件进行处理,但是发现DataGrid只有Cell…
http://www.cnblogs.com/Zhouyongh/archive/2011/08/01/2123610.html Style 用来在类型的不同实例之间共享属性.资源和事件处理程序,您可以将 Style 看作是将一组属性值应用到多个元素的捷径. 这是MSDN上对Style的描述,翻译的还算中规中矩.Style(样式),简单来说,就是一种对属性值的批处理,类似于Html的CSS,可以快速的设置一系列属性值到UI元素. 示例 一个最简单的Style的例子: 1: <Window> 2…
默认情况下 IDA 不会打开这些窗口,可通过 View -> Open Subviews 命令打开 Strings 窗口(Strings) Strings 窗口中显示的是从二进制文件中提取出的一组字符串,以及每个字符串所在的地址 双击 Strings 窗口中的任何字符串,反汇编窗口和十六进制窗口将跳转到该字符串所在的地址 将 Strings 窗口与交叉引用相结合,可迅速定位感兴趣的字符串,并追踪到程序中任何引用该字符串的位置 例如,看到 SOFTWARE\Microsoft\Windows\Cu…
布局:StackPanel  栈布局:控件不会拐弯且多出的不再显示.DockPanel   停靠布局 吸在上边下边或左右.WrapPanel    环绕布局   一行控件会拐弯Canvas  进行基于坐标的布局 Grid中若不指定Grid.Row属性及Grid.Column则默认为:0行,0列.RowDefinitions ColumnDefinitions ShowGridLines=true <ColumnDefinition Width="100"></Colu…
看上去,WPF比silverlight有前途一点.毕竟,微软还没有宣布,WPF停止更新. 但我怀疑,不久的将来,WPF也会步其子集silverlight的后尘,要么不再出后续版本,要么向HTML5 + CSS3转型. WPF主要负责UI.虽然只要我们愿意,也可以像WINFORM那样,做出很强的逻辑处理程序,但其本意,只在于负责界面工作,有逻辑处理,也是跟界面有关.写WPF程序,一般会倾向于遵循MVVM模式吧. 这种思想挺不错,问题在于,WPF自己搞了一套界面定义语言:XAML. 多么复杂的一套东…
作为一个WPF初学者,感到困难重重.在网上想查个ListBox绑定数据源的示例,结果出来一大堆代码,一看心就烦. 我给个简洁一点的代码: 后台代码: protected class UserItem { public UserItem(int Id, string Name, bool IsActived) { this.Id = Id; this.Name = Name; this.IsActived = IsActived; } public int Id{get;set;} public…
前一段半心半意地学习了一下WPF,是从控件入手的,发现巨容易,甚至有些无趣.昨天面试,被问到了很多WPF的特性的东西,直接就傻了.于是乎,还是要去深刻的学习一下WPF.刚刚试了一下数据绑定,几次都没有成功,后来发现是DataContext搞得鬼. 我暂时有两点结论: 1.如果没有显式设置上下文,那么数据上下文就是界面: 例如下边代码,textBox1绑定textBlock2的Text属性的时候,数据上下文就是Grid或者Grid父容器的DataContext,上下文中能用到就是界面元素的属性.…
wpf常用控件 0x01. 常用布局控件 1.Canvas 不会对子控件施加任何帮助,也不会施加任何限制 2.DockPanel 可以让子控件贴靠在自己四条边的任意一边 ,最后一个子控件充满剩余区域 3.Gird 可以把控件分为若干行若干列,便于对其排列 4.StackPanel 按照水平或者竖直方向对子控件进行排列(类似stack) 5.WrapPanel StackPanel 的扩展,可以多行和多列进行排序 6.Bord 只包含一个子对象的容器 HA 和 VA 两个对其属性确定对齐方式 ,l…
布局原则 WPF窗口只能包含单个元素.如果要放置多个元素,需要放置一个容器,然后在容器中添加元素. 不应显示的设定元素的尺寸 不应该使用屏幕坐标指定元素的位置 布局容器的子元素"共享"可用的空间 可嵌套的布局容器 前两个是为了使得WPF程序更加灵活,在不同的设备上能灵活适应,能处理动态内容. 总的目标都是为了创建更好更灵活的用户界面. StackPanel面板 简单地在单行或单列中以堆栈方式放置其子元素. 默认按照自上而下地顺序排列元素.通过设置Orientation属性,可以更改排列…
在这里讨论依赖属性实现原理,目的只是学习WPF是怎么设计依赖属性的,同时更好的使用依赖属性. 首先我们来思考一个简单的问题:我们希望能验证属性的值是否有效,属性变更时进行自己的处理.回顾一下.net的处理方式 Public Class MyClass{ private int index; Public int Index{ get{ return index; } set{ if(属性变更时){ //有效性检查 //处理或激发事件通知外部处理 } } }} 现在,我们希望设计一套属性系统,能验…
1.什么是依赖属性 依赖属性是一种可以自己没有值,并且通过Binding从数据源获得值(依赖在别人身上)的属性,拥有依赖属性的对象被称为"依赖对象". 依赖项属性通过调用 Register 方法(或 RegisterReadOnly)在 WPF 属性系统中注册,并通过 DependencyProperty 标识符标示属性. 依赖项属性只能由继承自 DependencyObject 类的类型使用,在WPF中大部分的类都可以支持依赖属性. 2.DependencyObject和Depend…
前言 作为一只菜鸟,之前学了一段时间的WPF,但是没有总结,过了一学期发现好多东西都忘记了,很多东西还是需要记下来,以备后续复习. 数据绑定在事件中应用非常广泛,可以有效地减少代码量,那么什么是数据绑定?说的简单就是从源对象提取一些信息,将其用于设置目标对象的属性,这里有一点需要注意,目标属性需要是依赖属性(Dependency Property),而源对象可以是任何内容. 数据绑定可以分为元素到元素的绑定和元素到非元素对象的绑定. 元素到元素绑定 XAML绑定 首先来看一个简单的例子 <Gri…
Extensible Application Markup Language,XAML是一种声明性标记语言. 一.XAML语法概述 1,与XML类似,用尖括号标记元素 <StackPanel> <Button Content="Click Me"/> </StackPanel> 2,特性语法(属性) <Button Background="Blue" Foreground="Red" Content=&q…
好久没写Blogs了,现在在看[WPF编程宝典],决定开始重新写博客,和大家一起分享技术. 在编程时我们常希望界面是动态的,可以随时变换而不需要重新编译自己的代码. 以下是动态加载XAML的一个事例代码. 在debug文件夹下新建一个文本文件,重命名为:file.xaml 插入界面代码: <DockPanel xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> <Button Name=…
下面简单介绍常见的面板. 一.Grid 1.Grid关于调整行列距离有三种方法:绝对大小,自动大小,比例大小.如下: <ColumnDefinition Width="100"></ColumnDefinition> <ColumnDefinition Width="Auto"></ColumnDefinition> <ColumnDefinition Width="*"></Co…