WinForm控件学习笔记【第一天】——Control类
感悟:明天就又是学校双选会的日子了。两年我都参与了学校的双选会的服务工作,现在该是双选会服务的我时候了。怎么样找到一份好的工作,或者说怎么样学习才能符合企业对人才的要求,我现在也是很迷茫。平时都是在看似忙碌,每天敲代码,随着自己的兴趣去学习,也不知道自己现在是个什么水平,也许明天去双选会面试一番就都更清晰一些。
两年了,敲了两年的代码了,这期间会逐渐的形成了自己的学习风格,可是有一样我觉明确的知道,学习总结这是很重要的,可我却没有做好,看看之前发过的随笔就知道了。对于C#的基础语法已经很熟悉了(PS:按企业要求我要说精通C#语法了)。
在学校的网络中心,有自己的桌子,晚上就自己,很好的学习环境。打算每天晚上写一篇学习总结。现在就开始吧,Let’s Go!
System.Windows.Control 几乎是每个控件和窗体的基类,派生自 System.ComponentModel.Component 类。Control类为它提供了一个很长的功能列表,就是绝大多是控件所共有的一些属性。
大小和位置
|
属性名 |
属性值 |
备注 |
|
Height |
Int |
|
|
Width |
Int |
|
|
Top |
Int |
|
|
Bottom |
Int |
|
|
Left |
Int |
|
|
Right |
Int |
|
|
Size |
Size |
Size结构包含X、Y坐标 |
|
Location |
Point |
Point结构包含X、Y坐标 |
|
Dock |
DockStyle |
确定子控件停放在父控件哪条边 |
|
Anchor |
AnchorStyles |
把子控件的一条边锚定到父控件的一条边 |
用法与用例:
设置窗体启动位置居中:
private void Form1_Load(object sender, EventArgs e)
{
this.Left = (Screen.PrimaryScreen.WorkingArea.Width - Width) / 2;
this.Top = (Screen.PrimaryScreen.WorkingArea.Height - Height) / 2;
}
和
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
Dock设置与效果:
设计代码,在Form1.Designet.cs文件里面
this.textBox1.Dock = System.Windows.Forms.DockStyle.Top;
外观
|
属性名 |
属性值 |
备注 |
|
BackColor |
Color |
背景色 |
|
ForeColor |
Color |
前景色 |
|
BackGroundImage |
Image |
背景图像 |
|
BackColorImageLayout |
ImageLayout |
设置控件的显示方式 |
|
Font |
Font |
|
|
Text |
String |
用法与用例:
1.如果同时设置了窗体或控件的背景色和背景图像则显示背景图像,注意有的控件是没有背景图像这个属性的。
2. 设置控件的显示方式这一属性,ImageLayout是一个枚举类型“Center、Tile、Stretch、Zoom、None”,用的还算多。
3.Font和Text一般要先在属性里设置好实际运行过程中Text的赋值会用的很多,Font基本不会变。
用户交互操作
|
常用事件 |
备注 |
|
Click |
鼠标单击事件 |
|
DoubleClick |
鼠标双击事件 |
|
KeyDown |
按下按键事件 |
|
KeyPress |
控件具有焦点用户释放按键事件 |
|
KeyUp |
释放按键事件 |
|
MouseDown |
鼠标按下 |
|
MouseUp |
鼠标释放 |
|
MouseEnter |
鼠标进入控件可见区域 |
|
MouseLeave |
鼠标离开控件可见区域 |
|
MouseHover |
鼠标进入控件可见区域静止一段时间后 |
用法与用例:
1.触发鼠标双击事件一定会先触发鼠标单击事件。
2.MouseDown和MouseUp会把MouseEventArgs作为其参数。其中MouseEventArgs包含单击的按钮、按钮被单击的次数、鼠标制动器的数目和鼠标当前的X、Y坐标。需要处理这些信息就不能用Click和DoubleClick事件。
3.对应的KeyPress事件接收一个KeyPressEventArgs,它包含被按键的字符值KeyChar。
Windows功能
支持与Windows交互操作的功能包括Handle和IsHandleCreated属性。Handle属性返回一个包含控件Windows句柄的IntPrt。窗口句柄是唯一表示窗口的一个很难懂的值,用到的地方很多。
为了访问Windows消息,可以重写WndProc()方法。该方法把一个Message对象作为其参数。Message对象是Windows消息的一个简单封装器,用到的次数很多。
其它功能
数据绑定……
Invalidate()方法可以重绘失效区域……
等等,还有很多就先不说了,以后慢慢写。明天会写一些控件的用例,这个写这应该会舒服些。
WinForm控件学习笔记【第一天】——Control类的更多相关文章
- Winform控件学习笔记【第二天】——常用控件
背景:期末考试刚过就感冒了,嗓子火辣辣的,好难受.但是一想起要学习总结就打起精神来了,Winform控件网上也没有多少使用教程,大部分都是自己在网上零零散散的学的,大部分用的熟了,不总结会很容易忘得. ...
- Winform控件学习笔记【第五天】——ListView
[第五天] 常用的基本属性: FullRowSelect:设置是否行选择模式.(默认为false) 提示:只有在Details视图该属性才有意义. GridLines:设置行和列之间是否显示网格线.( ...
- Winform控件学习笔记【第四天】——WebBrowser
常用方法 Navigate(string urlString);//浏览urlString表示的网址 Navigate(System.Uri url);//浏览url表示的网址 Navigate(st ...
- Winform控件学习笔记【第六天】——TreeView
TreeView控件用来显示信息的分级视图,如同Windows里的资源管理器的目录.TreeView控件中的各项信息都有一个与之相关的Node对象.TreeView显示Node对象的分层目录结构,每个 ...
- Winform控件学习笔记【第三天】——ListBox
1. 属性事件列表: SelectionMode 组件中条目的选择类型,即多选(Multiple).单选(Single) Rows 列表框中显示总共多少行 Selecte ...
- 转)delphi chrome cef3 控件学习笔记 (二)
(转)delphi chrome cef3 控件学习笔记 (二) https://blog.csdn.net/risesoft2012/article/details/51260832 原创 2016 ...
- C# WinForm调用UnityWebPlayer Control控件 <学习笔记1>
工具 1.三维场景 Unity 5.0.2f1 2.开发环境Microsoft Visual Studio 2010 3.需要使用的控件 UnityWebPlayer Control 出现的问题及解决 ...
- Winform控件学习-TreeView - ContextMenuStrip
首先,要向窗体添加一个TreeView控件: 然后再添加一个ContextMenuStrip控件: 接下就要给TreeView添加一个MouseDown事件,代码如下: Example 1 priva ...
- dev控件学习笔记之----CxGrid
本人总结的DEV学习:希望对大家有所帮助. 一.是否显示分组工具: 二.表格左边记录信息显示的宽度: 三.设置表格行高: 四.表头文件的水平和垂直设置:多个设置用按住SHIFT后进行多选,然后就可以设 ...
随机推荐
- 【C/C++】一道试题,深入理解数组和指针
在x86平台下分析下面的代码输出结果 int main(void) { ] = {, , , }; ); ); printf(], *ptr2); ; } &a+1 首先明确,a是一个具有4个 ...
- vm12序列号
VMware tools怎么删除rpm -e open-vm-tools-desktop vm12序列号5A02H-AU243-TZJ49-GTC7K-3C61NVF5XA-FNDDJ-085GZ-4 ...
- IE 此网站的某个加载项无法运行
1.使用IE浏览器 发生问题,一直以为是浏览器安全设置出问题,将IE安全级别调到最低,还是同样的问题 2.转用360浏览器(IE内核) 问题一样,提示略有不同 点击需要运行的java程序 解决方法 1 ...
- iOS 导航栏返回到指定页面的方法和理解
关于ios中 viewcontroller的跳转问题,其中有一种方式是采用navigationController pushViewController 的方法,比如我从主页面跳转到了一级页面,又从一 ...
- ActiveMQ入门实例(转)
转载自:http://www.cnblogs.com/xwdreamer/archive/2012/02/21/2360818.html 1.下载ActiveMQ 去官方网站下载:http://act ...
- # Writing your-first Django-app-part 5 -test
确认bug 写test测试暴露bug 修复bug 更多测试例子 测试一个view The Django test client测试客户端. 提升DemoAppPoll/views.py 测试我们的vi ...
- 【WPF】ListBox嵌套与事件冒泡
问题:两个ListBox嵌套后,当鼠标位于内部ListBox上,鼠标滚轮事件会被内部ListBox接收,导致外层ListBox不能用鼠标滚轮滑动!现在的需求是该事件要能给外部ListBox处理,即嵌套 ...
- python json 数据操作
python 有专门针对 json 操作的函数 #!/usr/bin/python3 import json mytest_js = { "a" : 1, "b" ...
- 区块链blockchina简述
区块链是比特币的底层技术和基础架构,本质上是一个去中心化的数据库.区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)并生成下一个 ...
- Dapper:安装Dapper时报错
今天在使用VS 2013安装Dapper的时候报错,具体报错信息如下: 经过网上查找错误原因,发现是安装的Dapper版本过高,.Net Framework版本不支持该版本的Dapper. 解决方案: ...