当前位置: 首页 > news >正文

山东政务网站建设南宁在哪里推广网站

山东政务网站建设,南宁在哪里推广网站,在职研究生,山东省荣成市建设局网站上周在看别人写的上位机demo代码时,发现创建的项目模板是"Windows 窗体控件库"(如下图) 生成的项目结构像自定义控件库,没有程序入口方法Main,但却很神奇能调试,最后发现原来Vistual Studio启动了一个外挂程序UserContr…

上周在看别人写的上位机demo代码时,发现创建的项目模板是"Windows 窗体控件库"(如下图)

 生成的项目结构像自定义控件库,没有程序入口方法Main,但却很神奇能调试,最后发现原来Vistual Studio启动了一个外挂程序UserControl TestContainer.exe,运行效果如下图:

 最后发现该exe在目录C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE下,这个目录和安装的vistual studio的版本有关,如下图:

通过反编译看到了PropertyGrid控件,如下图,然后查阅相关的博客就知道怎样使用了

 

而最近发现我们公司的项目发现也用到了该控件,所以学习它就提上了日程。像有些卡业务流程或者调用第三方的接口的业务逻辑,某些机器因某种原因需要临时关闭该功能,就可以使用该控件实现个性化控制了,我上一家公司是用一个表来存储这种个性化设置参数,这样就要向数据库中查询一次,有点浪费性能了。

好了,下面就和我一起体验一下该控件吧,当然网上也有很多博客教程了,本文就简单意思一下就行,核心就是设置PropertyGrid控件的SelectedObject属性为对应的Control控件

步骤如下:

1  新增winfrom项目,项目名称为:UserControlContainer,生成的项目结构默认有一个Form1,就用它了

2  在工具箱中向Form1窗体拖入Button、Panel和PropertyGrid控件,布局如下:

 

3 新增自定义控件,名为:UserControlTest,如下图:

详细代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace UserControlContainer
{public partial class UserControlTest : UserControl{private string _newProp;[Browsable(true), Category("自定义属性"), Description("测试描述")]public string NewProp{get { return _newProp; }set { this._newProp = value; }}public UserControlTest(){InitializeComponent();}}
}

代码中添加了自定义属性NewProp,属性上的标记信息用于程序在运行时显示的属性信息

4  在Form1编写的代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;namespace UserControlContainer
{public partial class Form1 : Form{UserControlTest userControlTest;public Form1(){InitializeComponent();button1.Click += button1_Click;button2.Click += Button2_Click;button3.Click += Button3_Click;userControlTest = new UserControlTest();userControlTest.Dock = DockStyle.Fill;userControlTest.BackColor = Color.Black;this.panel1.Controls.Add(userControlTest);}/// <summary>/// 鼠标点击事件/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void button1_Click(object sender, EventArgs e){this.propertyGrid1.SelectedObject = this.button1;}/// <summary>/// 设为空按钮点击事件/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void Button2_Click(object sender, EventArgs e){this.propertyGrid1.SelectedObject = null;}private void Button3_Click(object sender, EventArgs e){this.propertyGrid1.SelectedObject = this.userControlTest;}}
}

代码太简单了,就不解释了

5  运行测试效果如下图:

刚启动的效果图:

点击"设置按钮",按钮,可以看到右边的属性框信息,如下图:

 

通过右边的属性框 修改"设置按钮"的按钮名称为"设置按钮123",效果如下图:

 

点击"设为空"按钮,效果如下图:

点击"设置自定义控件"按钮,可以看到自定义的属性NewProp,效果如下图:

 

 然后在右边的属性框中修改自定义控件的背景颜色为红色,效果如下图:

好了,本文到此结束。

 

 

http://www.tj-hxxt.cn/news/74909.html

相关文章:

  • 怎么给网站加代码全国各城市疫情高峰感染高峰进度
  • 响应式网站建设咨询网站开发教程
  • 电商网站建设网络公司企业做网上推广
  • 南京做网站优化价格google搜索引擎官网
  • java做独立网站爬虫网络服务提供者
  • 哈尔滨专业网站制作设计外贸seo公司
  • 武汉营销型网站多少钱谷歌搜索引擎下载安装
  • 如何提高网站的点击率制作网页的流程步骤
  • 平湖网站建设公司克怎么查百度搜索排名
  • php 网站 整合 数据库做运营的具体做什么
  • 台州网站建设公司网站关键词优化的价格
  • 网站制作与网站建设企业网络推广
  • 做h5网站的公司互联网营销师怎么考
  • 留言网站建设怎样给自己的网站做优化
  • 帮助中心网站怎么做关键词搜索指数
  • 什么网站做奢侈品的工厂店网络营销的四种模式
  • wordpress大商创会员西安seo高手
  • 西安北郊做网站公司东莞优化网站制作
  • 朔州网站seo线上广告推广
  • 两学一做山东网站福建网站建设制作
  • 东莞出租车公司seo点击器
  • 北京做网站公司推荐seo营销策略
  • 阿里云 网站备案百度推广非企代理
  • 河南濮阳今日疫情谷歌seo服务公司
  • 网络公司介绍怎么写江苏搜索引擎优化
  • 购物分享网站怎么做的十大基本营销方式
  • 税务 网站建设 重视搜索电影免费观看播放
  • 电商网站设计周志seo下载站
  • 京网站建设大数据营销
  • 湖州做网站公司厦门搜索引擎优化