关于C# PropertyGrid的用法没有找到,找到一个C++的用法。
模仿着使用了一下,感觉挺不错,分享一下。

基本用法:
拖个PropertyGrid,绑定一个属性类就行了。

大气象

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->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 PropertyGridApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
propertyGrid1.SelectedObject = new Go();
} class Go
{
private string _Hi = "hi";
public string Hi
{
get { return _Hi; }
set { _Hi = Hi; }
}
} }
}

它能自动识别Go类中的属性,并且自动关联。

对属性进行分类并加注释:

大气象

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->class Go
{
private float _TieMu = 5.5f;
private string _Rule = "数子法";
[CategoryAttribute("规则"), DescriptionAttribute("贴目")]
public float TieMu
{
get { return _TieMu; }
set { _TieMu = TieMu; }
}
[CategoryAttribute("规则"), DescriptionAttribute("计算法")]
public string Rule
{
get { return _Rule; }
set { _Rule = Rule; }
} private int _Black = ;
private int _White = ;
[CategoryAttribute("围棋"), DescriptionAttribute("黑")]
public int Black
{
get { return _Black; }
set { _Black = Black; }
}
[CategoryAttribute("围棋"), DescriptionAttribute("白")]
public int White
{
get { return _White; }
set { _White = White; }
}
}

使用Color类型可以显示颜色选择下拉框,使用Image类型可以显示图片选择对话框,真强大。

大气象

Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->private Color _BoardColor = Color.Yellow;
[CategoryAttribute("围棋"), DescriptionAttribute("棋盘颜色")]
public Color BoardColor
{
get { return _BoardColor; }
set { _BoardColor = BoardColor; }
} private Image _Background;
[CategoryAttribute("围棋"), DescriptionAttribute("棋盘背景")]
public Image Background
{
get { return _Background; }
set { _Background = Background; }
}

另外是自定义类型,比如枚举.

源码:http://files.cnblogs.com/greatverve/PropertyGridApp.rar

参考:

http://blog.csdn.net/xoyojank/archive/2009/07/04/4322167.aspx

C# WinForm PropertyGrid用法的更多相关文章

  1. winform listview用法

    资源收集 C#winform中ListView的使用 C# WinForm开发系列 - ListBox/ListView/Panel(介绍了一些listview的高级用法) 直接上代码 示例一: th ...

  2. winform devexpress 用法汇总

    废话不多说先上图 1.封装分页控件 qrcodeOnPage1.SearchData(gridControl2, IDataPage, sWhere, "", "tb_o ...

  3. C# WINFORM ListView用法详解(转)

    源代码下载位置: http://pan.baidu.com/s/1qXrLehe 一.ListView类 1.常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false ...

  4. Winform Timer用法,Invoke在Timer的事件中更新控件状态

    System.Timers.Timer可以定时执行方法,在指定的时间间隔之后执行事件. form窗体上放一个菜单,用于开始或者结束定时器Timer. 一个文本框,显示定时执行方法. public pa ...

  5. C# winform对话框用法大全

      对话框中我们常用了以下几种:1.文件对话框(FileDialog) 它又常用到两个: 打开文件对话框(OpenFileDialog) 保存文件对话(SaveFileDialog)2.字体对话框(F ...

  6. C# winform OpenFileDialog用法

    https://jingyan.baidu.com/article/e52e36156fa6d240c60c51c8.html 详情看看这个.

  7. javascript调用ActiveX接口失败的解决方案及使用心得

    前段时间公司做了个比较大的项目,需要用到ocx控件,我厂大部分项目都采用C#.net,而winform程序条用ocx控件接口是相对简单的,但是javascript调用ocx接口,却和winform的用 ...

  8. ado.net 连接数据库

    一.用SqlConnection连接SQL Server 1..加入命名空间 using System.Data.SqlClient; 2.连接数据库 SqlConnection myConnecti ...

  9. PropertyGrid控件由浅入深(二):基础用法

    目录 PropertyGrid控件由浅入深(一):文章大纲 PropertyGrid控件由浅入深(二):基础用法 控件的外观构成 控件的外观构成如下图所示: PropertyGrid控件包含以下几个要 ...

随机推荐

  1. iOS中的触摸事件和手势处理

    iOS中的事件可以分为三大类: 1> 触摸事件 2> 加速计事件 3> 远程控制事件 响应者对象 在iOS中不是任何对象都能处理事件,只有继承了UIResponder的对象才能接收并 ...

  2. CMD命令名详细大全

    在运行菜单里键入CMD,就可以调出CMD命令窗口,有关某个命令的详细信息,请键入 HELP 命令名 ASSOC 显示或修改文件扩展名关联. AT 计划在计算机上运行的命令和程序.ATTRIB 显示或更 ...

  3. hibernate一对一关系实现

    按照主键映射,按照外键映射 Address.hbm.xml: <?xml version="1.0"?><!DOCTYPE hibernate-mapping P ...

  4. Go

    一.简介 https://zh.wikipedia.org/wiki/Go 二.安装 1)低版本 http://blog.sina.com.cn/s/blog_59cc90640102xm8r.htm ...

  5. 解决在iOS8环境下,当用户关闭定位服务总开关时,无法将APP定位子选项加入定位权限列表的问题

    关键点:- (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizati ...

  6. JS键盘事件监听

    window.onload=function(){ var keyword = document.getElementById("keyword"); keyword.onkeyu ...

  7. python 定时任务

    Python 定时任务 最近学习到了 python 中两种开启定时任务的方法,和大家分享一下心得. sched.scheduler() threading.Timer() sched 定时任务 使用s ...

  8. 记一次ftp服务器搭建走过的坑

    记一次ftp服务器搭建走过的坑 1.安装 ①下载 wget https://security.appspot.com/downloads/vsftpd-3.0.3.tar.gz #要FQ ②解压 ta ...

  9. curl -x 127.0.0.1:80

    curl -x ip:80 +网址 就相当于在本地hosts文件指定一个域名,具有优先访问权.(curl -x 127.0.0.1:80这个方法适用于生产环境的服务器来测试自己做为代理商访问是否正常) ...

  10. java :hello world

    练习java的基本语法. output hellow world. 需求:打包自身项目的bin目录文件为一个临时可运行的jar文件,执行完后删除. 使用process执行jar文件,返回输入流和错误流 ...