winform用户控件
用途用户控件包含Time控件和一个lable控件,一个ToolStrip控件,每隔一秒显示一次时间
1. 生成用户控件
新建一个项目类型为用户控件
注意定义类名,此类名为以后工具箱中显示的名字,暂且定义此处类名为LabelTime. 文件名称为UserControl1.cs(无关紧要,vs引用dll的时候,都是关注类名非文件名)
namespace myWindowsFormsControlLibrary1{public partial class labelTime : UserControl{public labelTime(){InitializeComponent();timer1.Enabled = true;timer1.Interval = 1000;}private void timer1_Tick(object sender, EventArgs e){this.toolStripLabel1.Text = "本地时间: " + DateTime.Now.ToString();//this.toolStripLabel2.Text = "服务器时间:" ;}private void UserControl1_Load(object sender, EventArgs e){}private void toolStripLabel1_Click(object sender, EventArgs e){}}}
右击生成项目,然后在Bin文件夹就会出现以下文件 myWindowsFormControlLibrary.dll,此dll文件以后就是winform项目要引用的控件。
2.添加用户控件到工具栏中
VS菜单--->工具---->选择工具箱项
点击浏览,选择刚才的dll路径,以后工具箱就会出现此控件了。
3.项目中使用控件
测试,新建项目winform类型的,然后点开工具箱会发现如下图 myWindowsFormsControlLibrary1是刚才项目的命名控件,labelTime是类的name
然后接着托动就可以使用了
winform用户控件的更多相关文章
- winform 用户控件、 动态创建添加控件、timer控件、控件联动
用户控件: 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件. 使用方法:在项目上右键.添加.用户控件,之后用户控件的编辑与普通容器控件类似.如果要在后台往窗 ...
- WinForm用户控件、动态创建添加控件、timer控件--2016年12月12日
好文要顶 关注我 收藏该文 徐淳 关注 - 1 粉丝 - 3 0 0 用户控件: 通过布局将多个控件整合为一个控件,根据自己的需要进行修改,可对用户控件内的所有控件及控件属性进行修 ...
- winform用户控件、动态创建添加控件、timer控件、控件联动
用户控件: 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件. 使用方法:在项目上右键.添加.用户控件,之后用户控件的编辑与普通容器控件类似.如果要在后台往窗 ...
- 【NET】Winform用户控件的初步封装之编辑控件
编辑控件 public abstract partial class TEditorBase <TEntity, TRepository, TSqlStrConstruct> : User ...
- 【NET】Winform用户控件的初步封装之列表页控件
public abstract partial class TListPager<TEntity, TRepository, TSqlStrConstruct> : UserControl ...
- winform 用户控件事件的写法
public partial class UcTest : UserControl { public UcTest() { InitializeComponent(); } //定义事件 public ...
- 在Winform界面使用自定义用户控件及TabelPanel和StackPanel布局控件
在很多时候,我们做一些非常规化的界面的时候,往往需要创建一些用户控件,在其中绘制好一些基础的界面块,作为后续重复使用的一个单元,用户控件同时也可以封装处理一些简单的逻辑.在开发Winform各种类型项 ...
- WinForm用户自定义控件,在主窗体加载时出现闪烁;调用用户控件出现闪烁,需要鼠标才能够显示
转载自:http://www.dotblogs.com.tw/rainmaker/archive/2012/02/22/69811.aspx 解决方案: 在调用用户控件的窗体里面添加一下代码: pro ...
- C# WinForm中添加用户控件
转:https://blog.csdn.net/haelang/article/details/40681003 有的时候我们需要频繁使用一些系统默认工具的组合,那么就可以使用自定义用户控件. 起一个 ...
随机推荐
- Atitti.java exp ast java表达式语法ast构造器
Atitti.java exp ast java表达式语法ast构造器 /atiplat_cms/src/com/attilax/lang/AstParser.java 原理 分割tokens_sli ...
- atitit...触发器机制 ltrigger mechanism sumup .的总结O8f
atitit...触发器机制 ltrigger mechanism sumup .的总结O8f 1. 触发器的类型 1 2. 实现原理 1 3. After触发器 Vs Instead Of触发器 ...
- ServiceStack 概念
目录 ServiceStack 概念 ServiceStack Web Service 创建与调用简单示列 ServiceStack ServiceStack是.Net和Mono的开源框架,相对WCF ...
- 修改Oracle并行度的方法
Oracle并行度默认为1,适当修改并行度对提高性能有很大帮助 1.查看并行度 select table_name,degree from user_tables; --并行度按照用户表分别设置 2. ...
- A new start
学习前端已经有一年多,也自己写过不少博客.笔记,但是比较不开心的是有时候自己写的博客自己都看不懂,所以最后决定重新开一个博客,目标是写能让别人看懂也能让自己看懂的东西,那才算真成功真的懂了.最后希望的 ...
- Access to the path '20141211142713.gif' is denied.
给network service加上读写权限即可
- android sdk
android sdk 网站 为什么google 的网站都上不去. http://www.androiddevtools.cn/
- Docker实践(5)—资源隔离
Docker使用cgroup实现CPU,内存和磁盘IO等系统资源的限制. CPU Docker现在有2个与CPU资源相关的参数,-c可以指定CPU的占比,--cpuset可以绑定CPU.例如,指定容器 ...
- quick -- 创建精灵和动作
local imgBg = display.newSprite("666666.jpg") :pos(display.cx, display.cy) :addTo(self) , ...
- Difference between LET and LET* in Common LISP
Difference between LET and LET* in Common LISP LET Parallel binding which means the bindings com ...