1.在WPF中,获取当前窗体的句柄与WINFORM中不一样: WINFORM直接获取:this.Handle----------this是窗体的类名,handle就是句柄. 2.WPF中先引用命名空间:System.Windows.Interop: IntPtr hwnd = new WindowInteropHelper(this).Handle;----this就是要获取句柄的窗体的类名: 3.控件句柄,同样引用 :System.Windows.Interop: IntPtr hwnd =…
一.获取默认的控件模板 WPF修改控件模板是修改外观最方便的方式,但是会出现不知道原来的控件的模板长什么样,或者想用来参考的,下面分享一下获取某控件默认控件模板的方式(已Button为例): 1.创建一个Button 2.在界面上选择Button,右键->编辑模板->编辑副本 ,即可看到XAML中自动生成了原始的控件模板 3.可以在默认模板上修改其中的一些属性运行测试是否生效 这样在默认的控件模板上编辑,只修改需要修改的部分即可,可以大大减少工作量,也添加了容错率.但是会发现所有的模板和样式都…
WPF常用控件应用demo 一.Demo 1.Demo截图如下: 2.demo实现过程 总体布局:因放大缩小窗体,控件很根据空间是否足够改变布局,故用WrapPanel布局. <ScrollViewer BorderBrush="BlueViolet"> <WrapPanel Margin="40,0,0,40"> </WrapPanel> </ScrollViewer> 窗体资源:同一种控件多处使用会有重复代码,为减…
当winform程序中新开一个线程,是无法改变主线程中窗体控件的属性的,否则运行时会报错. 若想在其他线程中控制主线程中的窗体控件,则必须利用BeginInvoke方法. 例如:添加一个名为textbox1的TextBox控件,想将它的Visible设置为false,则执行下面的代码即可 textbox1.BeginInvoke(new Action(() => { textbox1.Visible= false; })); 另外WPF中,想达到winform同样的效果,利用Dispatcher…
新建窗体程序了,添加窗体事件Load(加载窗体时).Resize(调整控件大小时).自定义方法setTag(获取控件的width.height.left.top.字体大小等信息的值).setControls(根据窗体大小调整控件大小). float X, Y;//X表示窗体的宽度,Y表示窗体的高度 private void Form1_Load(object sender, EventArgs e) { //this.Resize += new EventHandler(Form1_Resize…
原文:WPF Image控件中的ImageSource与Bitmap的互相转换  1.从bitmap转换成ImageSource [DllImport("gdi32.dll", SetLastError = true)] private static extern bool DeleteObject(IntPtr hObject); /// <summary> /// 从bitmap转换成ImageSource /// </summary> /// <…
通过一个子线程来操作主线程中的控件,但是,这样作会出现一个问题(如图1所示),就是TextBox控件是在主线程中创建的,在子线程中并没有对其进行创建,也就是从不是创建控件的线程访问它.那么,如何解决跨线程调用Windows窗体控件呢?可以用线程委托实现跨线程调用Windows窗体控件.下面将上一个例子进行一下改动.代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using Sys…
概念: 正则表达式是对字符串操作的一种逻辑公式, 就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个“规则字符串”, 这个“规则字符串”用来表达对字符串的一种过滤逻辑. 目的: 给定一个正则表达式和另一个字符串,我们可以达到如下的目的: 1. 验证给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”): 2. 可以通过正则表达式,从字符串中获取我们想要的特定部分.   应用示例: 1. WPF 输入控件 TextBox 限定输入特定字符: 步骤一:禁用输入法 <Window xml…
WPF DataGrid 控件的运用 运行环境:Window7 64bit,.NetFramework4.61,C# 6.0: 编者:乌龙哈里 2017-02-23 参考: King Cobra 博客 流泉飞石 博客 董辉 百度知道答题 章节: 添加列和数据源 选择单位设置 自动添加行号 Enter 键做成 Tab 键的效果 同步更新数据源 在选中 Cell 所在行上插入新行或删除选中 Cell 的所在行 获取选中单元格的值 正文: 一.添加列和数据源: 我们往一个 DataGrid 中添加数据…
WPF布局控件常用属性介绍 其它 | 作者:慧都控件网 | 2011-04-06 13:41:57| 阅读 0次 有用(0) 评论(0)   概述:WPF布局控件都是派生自System.Windows.Controls.Panel抽象类的面板,Panel类继承自 FrameworkElement,Panel类本身并没有什么特别的,但是WPF中提供了许多用于布局的控件都继承自Panel类,如 StackPanel控件,WrapPanel,DockPanel,Grid,UniformGrid,Can…