Eri*_*tas 5 c# propertygrid readonly icustomtypedescriptor
我在我正在编写的应用程序中使用PropertyGrid,以允许用户查看并有时编辑对象的实例.有时用户可能在读/写模式下打开文件,他们可以通过属性网格对文件进行更改.在其他情况下,它们可能以只读模式打开文件,并且不能通过PropetyGrid对对象进行任何更改.我的类还具有通过实现ICustomTypeDescriptor返回的动态属性.这就是为什么我真的想利用PropertyGrid控件的内置灵活性.
似乎没有一种简单的方法将Property-grid设置为只读模式.如果我禁用PropertyGrid,这也会阻止用户滚动列表.所以我认为最好的方法是在运行时将ReadOnlyAttributes添加到属性中.还有其他方法吗?
我找到了一个非常快速的解决方案,对于那些不关心属性被灰化的人来说.
TypeDescriptor.AddAttributes(myObject, new Attribute[]{new ReadOnlyAttribute(true)});
propertyGrid1.SelectedObject = myObject;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6835 次 |
| 最近记录: |