欢迎来到天天文库
浏览记录
ID:39072576
大小:78.09 KB
页数:35页
时间:2019-06-24
《C# PropertyGrid所有用法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、PropertyGrid控件简介如果您使用过Microsoft®VisualBasic®或MicrosoftVisualStudio.NET,那么您一定使用过属性浏览器来浏览、查看和编辑一个或多个对象的属性。.NET框架PropertyGrid控件是VisualStudio.NET属性浏览器的核心。PropertyGrid控件显示对象或类型的属性,并主要通过使用反射来检索项目的属性。(反射是在运行时提供类型信息的技术。)下面的屏幕快照显示了PropertyGrid在窗体上的外观。图1:窗体上的Pro
2、pertyGridPropertyGrid包含以下部分:·属性·可展开属性·属性类别标题·属性说明·属性编辑器·属性选项卡·命令窗格(显示控件设计器提供的设计器操作)创建PropertyGrid控件要使用VisualStudio.NET创建PropertyGrid控件,需要将该控件添加到工具箱中,因为默认情况下并不包含该控件。在Tools(工具)菜单中,选择CustomizeToolbox(自定义工具箱)。在对话框中选择FrameworkComponents(框架组件)选项卡,然后选择Propert
3、yGrid。如果您从命令行编译代码,请使用/reference选项并指定System.Windows.Forms.dll。以下代码显示了如何创建PropertyGrid控件并将其添加到窗体中。1.usingSystem;2.usingSystem.Drawing;3.usingSystem.ComponentModel;4.usingSystem.Windows.Forms;5.usingSystem.Globalization;6.publicclassOptionsDialog:System.W
4、indows.Forms.Form7.{8.privateSystem.Windows.Forms.PropertyGridOptionsPropertyGrid;9.publicOptionsDialog()10.{11.OptionsPropertyGrid=newPropertyGrid();12.OptionsPropertyGrid.Size=newSize(300,250);13.this.Controls.Add(OptionsPropertyGrid);14.this.Text="选
5、项对话框";15.}16.[STAThread]1.staticvoidMain()2.{3.Application.Run(newOptionsDialog());4.}5.}何处使用PropertyGrid控件在应用程序中的很多地方,您都可以使用户与PropertyGrid进行交互,从而获得更丰富的编辑体验。例如,某个应用程序包含多个用户可以设置的“设置”或选项,其中一些可能十分复杂。您可以使用单选按钮、组合框或文本框来表示这些选项。但本文将逐步介绍如何使用PropertyGrid控件创建选项窗
6、口来设置应用程序选项。上面所创建的OptionsDialog窗体即是选项窗口的开始。现在,我们创建一个名为AppSettings的类,其中包含映射到应用程序设置的所有属性。如果创建单独的类而不使用多个分散的变量,设置将更便于管理和维护。1.publicclassAppSettings{2.privateboolsaveOnClose=true;3.privatestringgreetingText="欢迎使用应用程序!";4.privateintitemsInMRU=4;5.privateintma
7、xRepeatRate=10;6.privateboolsettingsChanged=false;7.privatestringappVersion="1.0";8.9.publicboolSaveOnClose10.{11.get{returnsaveOnClose;}12.set{saveOnClose=value;}13.}14.publicstringGreetingText15.{16.get{returngreetingText;}17.set{greetingText=value;}
8、18.}19.publicintMaxRepeatRate20.{21.get{returnmaxRepeatRate;}22.set{maxRepeatRate=value;}23.}24.publicintItemsInMRUList25.{26.get{returnitemsInMRU;}27.set{itemsInMRU=value;}28.}29.publicboolSettingsChanged30.{31.get{returnsettingsChange
此文档下载收益归作者所有