日期:2012-02-25 浏览次数:20491 次
改变 PropertyGrid 控件的编辑风格(3)——打开对话框
张昱e-zhangyu@vip.sina.com 效果:
适用场合:
1、 打开文件、打印设置等通用对话框
2、 打开特定的对话框
步骤一:定义从UITypeEditor 派生的类,以 OpenFileDialog 对话框为例,示例代码如下:
using System;
using System.Windows.Forms;
using System.Drawing.Design;
using System.Windows.Forms.Design;
namespace blog.csdn.net.zhangyuk
{
/// <summary>
/// IMSOpenFileInPropertyGrid 的摘要说明。
/// </summary>
public class PropertyGridFileItem : UITypeEditor
{
public override UITypeEditorEditStyle GetEditStyle(
System.ComponentModel.ITypeDescriptorContext context)
{
return UITypeEditorEditStyle.Modal;
}
public override object EditValue(
System.ComponentModel.ITypeDescriptorContext context,
System.IServiceProvider provider,
object value)
{
IWindowsFormsEditorService edSvc = (IWindowsFormsEditorService)
provider.GetService(typeof(IWindowsFormsEditorService));
if( edSvc != null )
{
// 可以打开任何特定的对话框
OpenFileDialog dialog = new OpenFileDialog();
dialog.AddExtension = false;
if( dialog.ShowDialog().Equals(DialogResult.OK) )
{
&nbs