首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何强制PropertyGrid显示特定属性的自定义对话框?

在开发过程中,有时需要强制PropertyGrid显示特定属性的自定义对话框。以下是一些建议和方法:

  1. 使用自定义属性描述器:自定义属性描述器可以让您自定义属性的编辑器。您可以创建一个自定义属性描述器,在其中实现自定义对话框。
  2. 使用UITypeEditor类:UITypeEditor类是一个抽象类,可以用于创建自定义的属性编辑器。通过重写EditValue方法,您可以在其中实现自定义对话框。
  3. 使用Attribute类:Attribute类是一个基类,可以用于创建自定义属性。通过重写Attribute.GetCustomAttributes方法,您可以在其中实现自定义对话框。
  4. 使用TypeConverter类:TypeConverter类可以用于将属性值转换为其他类型。通过重写TypeConverter.ConvertTo方法,您可以在其中实现自定义对话框。
  5. 使用设计器:设计器可以让您在设计时编辑属性。通过重写设计器的EditValue方法,您可以在其中实现自定义对话框。
  6. 使用PropertyGrid的SelectedObject属性:PropertyGrid的SelectedObject属性可以让您设置要编辑的对象。您可以使用此属性来设置要编辑的对象,并在其中实现自定义对话框。
  7. 使用PropertyGrid的SelectedObjects属性:PropertyGrid的SelectedObjects属性可以让您设置要编辑的对象列表。您可以使用此属性来设置要编辑的对象列表,并在其中实现自定义对话框。
  8. 使用PropertyGrid的PropertySort属性:PropertyGrid的PropertySort属性可以让您设置属性的排序方式。您可以使用此属性来设置属性的排序方式,并在其中实现自定义对话框。
  9. 使用PropertyGrid的PropertyTabs属性:PropertyGrid的PropertyTabs属性可以让您设置属性的选项卡。您可以使用此属性来设置属性的选项卡,并在其中实现自定义对话框。
  10. 使用PropertyGrid的ToolbarVisible属性:PropertyGrid的ToolbarVisible属性可以让您设置工具栏是否可见。您可以使用此属性来设置工具栏是否可见,并在其中实现自定义对话框。

总之,要强制PropertyGrid显示特定属性的自定义对话框,您可以使用自定义属性描述器、UITypeEditor类、Attribute类、TypeConverter类、设计器、PropertyGrid的SelectedObject属性、PropertyGrid的SelectedObjects属性、PropertyGrid的PropertySort属性、PropertyGrid的PropertyTabs属性和PropertyGrid的ToolbarVisible属性等方法。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

运行时自定义PropertyGrid显示属性项目

运行时自定义PropertyGrid显示属性项目 简述 在PropertyGrid显示属性内容包括属性分类(Category)及组件属性, 在一般情况下直接使用PropertyGrid显示一个对象所有属性是非常方便...像要实现下面所显示这种效果在实际操作时会很麻烦。 左图是TextBox原有的所有属性,右图是经过处理后属性 ? ?...解决方法 在.Net中提供了一个自定义类型说明接口(System.ComponentModel.ICustomTypeDescriptor),PropertyGrid可以直接自动处理用此接口生成对象...PropertyGrid中所显示属性名称都还是原有名称,若想同时改变在PropertyGrid显示出来名称则需要重写PropertyDescriptor中部分方法,在上面这段代码中CustomPropertyDescriptor...,便可以将PropertyGrid显示内容完全自定义

1.4K20

如何使特定数据高亮显示?

如上图所示,我们需要把薪水超过20000行,通过填充颜色突出显示出来。如何实现呢?还是要用到excel里“条件格式”哦。...所以,在这里要提醒小伙伴们,如果想实现整行突出显示,“突出显示单元格规则”是不适用。“突出显示单元格规则”顾名思义,就是对符合规则“单元格”进行设置,而不是对“数据行”进行设置。...其它excel内置条件规则,也一样有这样限制。 那么,要实现整行条件规则设置,应该如何操作?既然excel内置条件规则已经不够用了,下面就自己动手DIY新规则吧。...2.如何使特定数据行高亮显示? 首先,选定要进行规则设置数据范围:选定第一行数据行后,同时按住Ctrl+Shift+向下方向键,可快速选定所有数据行。...3.总结: Excel里条件格式设置,除了内置规则,我们还可以自定义规则,使得符合需求数据行突出显示。 当然,关键是对excel里绝对引用/相对引用熟练掌握,然后再借助公式来实现。

5.6K00
  • 强大PropertyGrid

    把要编辑对象看成类的话, 所有要编辑属性就是成员 嗯嗯, 最近看了几眼Ogitor, 它对于PropertyGrid使用就很不错 所有要编辑对象(灯光, 模型, 粒子等等)都有一个共同基类,...每当选中一个可编辑对象时, 右边属性框里就显示出当前对象属性......(公司那个编辑器要多土就有多土-_-) 尽管Ribbon界面看起来很酷, 我还是对MFC提不起兴趣来... .net里PropertyGrid更方便, 一点一点来: 属性自动绑定: ref class...对于枚举类型, PropertyGrid会自动显示成下拉框. 把性别改成枚举看看: enum struct SexType { Male, Female }; ?...另外, 还可以弹出自定义编辑界面, 比如随时间变化曲线啦(经常用来做效果...)

    1K50

    PropertyGrid枚举显示为中文

    本文转载:http://www.cnblogs.com/yank/archive/2011/09/17/2179598.html ropertyGrid中枚举显示为中文 在系统开发中,经常会使用PropertyGrid...来修改或者展示某个对象属性,如果类中定义了枚举,在展现时候默认会展示枚举项或者枚举值,但是这并不是我们想要。...用户使用时候并不清楚该项代表意思。之前介绍过枚举显示中文一篇文章,大家可以看下,枚举显示中文。 想要效果: ? 在PropertyGrid中枚举显示中,又比较复杂一些。...PropertyGrid显示复杂属性需要TypeConverter,也就是一个转换 器,可以对其进行设置,显示我们想要格式、内容。...现有技术PropertyGrid枚举显示中文,有一些利用了绑定自定义控件,有一些绑定自定义 IList对象。

    1.1K20

    Ogitor代码分析

    Undo/Redo(命令模式) 这机制实现前提是, 所有CBaseEditor对象都可以用一系列属性”来进行初始化/设置. 所以每一个Command都是针对属性修改....对于Create/Destory来说, 可以看成对所有属性修改外加对象创建/删除. 属性变量类型并没有进行抽象, 而是转换成了字符串, 需要时再转换回来....如果是.net的话, 就方便许多, 直接可以获得PropertyInfo[], 而且能跟PropertyGrid控件进行属性自动绑定....操作时选中轴是所有编辑对象统一使用一套, 自定义表示, 如下图中spot light, 是通过派生CVisualHelper来进行定制绘制....PropertyGridItem绑定数据, 也是这个ID, 而不是实际对象. 但是, 这样也带来另一个问题: 每扩充一个属性就会去改动这个类型定义头文件, 那DLL中定义特殊属性怎么办?

    57720

    Power BI: 视觉对象图例如何自定义序列显示

    例如下图,对于图例上文化程度这一列,显示顺序为本科、初中、大专、高中、硕士。 显然,这样排序方式与我们希望不一致,我们需要是硕士、本科、大专、高中、初中。...设置按列排序步骤如下: (1)在表格视图中,通过输入数据,新建需要排序对照表(学历对照表)。 (2)选中学历这一列,然后点击列工具按列排序,选择学历ID。...(3)在模型视图中,将事实表与新建维度表(学历对照表)建立关系。 (4)回到报表视图,把原先x轴中事实表文化程度更换为维度表中学历,然后选择以升序排列,就可以得到我们想要结果了。...参考资料: [1] Power BI中如何自定义序列进行排序_power bi怎么自定义排序-CSDN博客(https://blog.csdn.net/gxchai/article/details/114009638

    75710

    关于自定义控件设计时如何属性写入aspx中研究(上)

    如何通过继承GridView来修改在设计时绑定数据源时自动生成ASP.Net代码?...就是实体类属性名,是E文,我现在想在GridViewCreateColumns方法中进行拦截这个生成过程,硬是把E文改为对应中文。...结果,在设计时和运行时都可以看到是中文,但是aspx中就不是中文。 我就想问问,怎么样,才能让它在aspx中体现中文,GridView自身是怎么样把自动生成列写入到aspx中。...但是,我有纳闷了,A从来不调用CreateColumns方法,它哪里来列信息? 最后只有一种可能,那就是:那些属性,是被复制过去,或者在GridViewDesigner中创建。...我研究,就到这里了,下次有空再把剩下发上来吧。

    2.7K80

    关于自定义控件设计时如何属性写入aspx中研究(下)

    虽然这一篇已经是“下”了,但是我并没有研究清楚“自定义控件设计时如何属性写入到aspx中”这个问题。 不过,我选择了另外一条路,做了点手脚,让控件把属性写入到aspx中去了。...其实,即使有人肯定告诉我,在上篇中提到ControlSerializer类SerializeControl方法就是用于把控件属性写入到aspx中去,我也实在没办法利用它,它位置太“深”了。...我是通过重写GridViewColumns属性来实现。...重载该属性,并输出日志,果然,有很少几次调用。不过,已经够了。 我做法就是,在这个属性get方法里面,强制改变各列属性,再返回。...,之前几个判断,是为了防止列属性被频繁改变。

    2.2K50

    C# WPF MVVM开发框架Caliburn.Micro Screens, Conductors 和 Composition⑦

    一般来说,组合是面向对象编程最重要方面之一,学习如何在表示层中使用它可以带来很大好处。为了了解构图在这个特定示例中作用,让我们看两个屏幕截图。...第一个显示视图中包含CustomerWorkspace应用程序,编辑特定客户地址。第二个屏幕是相同,但其视图/视图模型对是三维旋转,因此您可以看到UI是如何组成。...CustomerViewModel能够显示本地模式对话框(它们只是特定自定义记录模式对话框,而不是其他任何对话框)。...我还创建了两个简单方法来显示对话框和消息框,这些对话框和消息框通过IDialogManager界面公开。...以下是自定义策略如何使用它: 检查每个IWorkspace以查看它是否是IConductor。 如果为true,则获取实现应用程序特定接口IHaveShutdownTask所有已执行项。

    2.6K20

    基于属性编辑器框架

    还有"摆"这个操作, 其实本质上了也是对象位置变换这个属性变化....由此可以得出: 编辑器一切操作都是属性编辑 实体不用说了, 相信每个引擎都有Model/Light/Sound之类对象类. 那么怎么去定义一个属性呢?...简单来说, 一个属性是一个配对, 对象就是这些属性一个集合体. 以点光源为例, 它一般有这么几个属性: 名称. Light0 类型....Undo/Redo只不过是把属性进行还原而已 界面显示 属性可以与PropertyGrid良好结合. 对于MFCPropertyGrid正好可以用FourCCuint值做为id....扩展一下很容易把属性显示做成自适应, 而不依赖于具体代码实现. 考虑与.netproperty反射机制相结合(待验证) 再考查一下WPF下绑定机制与属性相结合会产生什么效果~

    95420

    【Flutter】评级对话框组件

    扑朔迷离一切都是小部件! 向用户显示一些知识是一个了不起想法,这是我们使用对话框最基本想法。在Flutter这个惊人UI工具包中,我们有几种不同方法来构建对话框。...在在本博客中,我们将探讨「Flutter中」 “「评级对话框”」。我们将看到如何使用flutter应用程序中「rating_dialog」包来实现美观评级对话框演示程序并进行自定义。...评级对话框一些属性: **message:**此属性用于对话框消息/描述文本。 **ratingColor:**此属性用于评级栏(星形图标和辉光)颜色。...**initialRating:**此属性用于评级栏初始评级。默认等级为1。 **force:**此属性用于禁用取消按钮并强制用户留下评分。...**onSubmitted:**此属性用于返回带有用户等级和注释值RatingDialogResponse。 **onCancelled:**此属性用于在用户取消/关闭对话框时调用。

    4.1K50
    领券