改变 PropertyGrid 控件的编辑风格(2)——编辑多行文本-.Net技术-3P代码网
繁体中文
设为首页
加入收藏
当前位置:.Net技术首页 >> Asp.Net开发 >> 改变 PropertyGrid 控件的编辑风格(2)——编辑多行文本

改变 PropertyGrid 控件的编辑风格(2)——编辑多行文本

2007-05-15 08:00:00  作者:  来源:互联网  浏览次数:0  文字大小:【】【】【
简介:改变 PropertyGrid 控件的编辑风格(2)——编辑多行文本 张昱e-zhangyu@vip.sina.com 效果: 适用场合: 1、 编辑多行文本; 2、 编辑长文本。 步骤一:定义从UITypeEditor 派生的类,示例如下: using Sy...

改变 PropertyGrid 控件的编辑风格(2)——编辑多行文本

张昱e-zhangyu@vip.sina.com

效果:

适用场合:

1、 编辑多行文本;

2、 编辑长文本。

步骤一:定义从UITypeEditor 派生的类,示例如下:

using System;

using System.Windows.Forms;

using System.Drawing.Design;

using System.Windows.Forms.Design;

namespace blog.csdn.net.zhangyuk

{

///

/// PropertyGridMutiText 的摘要说明。

///

public class PropertyGridRichText : UITypeEditor

{

public override UITypeEditorEditStyle GetEditStyle(

System.ComponentModel.ITypeDescriptorContext context)

{

return UITypeEditorEditStyle.DropDown;

}

public override object EditValue(

System.ComponentModel.ITypeDescriptorContext context,

System.IServiceProvider provider,

object value)

{

try

{

IWindowsFormsEditorService edSvc = (IWindowsFormsEditorService)

provider.GetService(typeof(IWindowsFormsEditorService));

if( edSvc != null )

{

if( value is string )

{

RichTextBox box = new RichTextBox();

box.Text = value as string;

edSvc.DropDownControl( box );

return box.Text;

}

}

}

catch( Exception ex )

{

System.Console.WriteLine( "PropertyGridRichText Error : " + ex.Message );

return value;

}

return value;

}

}

}

步骤二:编辑属性类,指定编辑属性。示例如下:

namespace blog.csdn.net.zhangyuk

{

public class SomeProperties

{

private string _finished_time = "";

……

// 多行文本编辑框

string _mutiLineSample = "";

[

Description("多行文本编辑框"),

Category("属性"),

EditorAttribute(typeof(PropertyGridRichText),

typeof(System.Drawing.Design.UITypeEditor))

]

]

public String 多行文本

{

get { return _mutiLineSample; }

set { _mutiLineSample = value;}

}

……

}

}

步骤三:设置PropertyGrid的属性对象。示例如下:

private void Form1_Load(object sender, System.EventArgs e)

{

this.propertyGrid1.SelectedObject = new SomeProperties();

}

责任编辑:admin
相关文章