注意:这个问题也被标记为C#,因为它是一个普通的问题,描述在C#中使用这个问题的答案是对我来说完全没问题。PropertyGrid.BrowsableAttributes的兴趣是什么?
我一直在研究PropertyGrid最近在.Net框架中。我检查了这个属性(BrowsableAttributes),我不知道它的用途。
起初我以为这将能够遍历你的SelectedObject
中的每个BrowsableAttribute
,那么你将能够找回原来的属性,这将是有用的。
不过没有关系,显然这一切的属性不会是给你一个AttributeCollection
只BrowsableAttribute
含,全部设置为True
...
有人可以见识一下什么是这种方法的地步?我甚至不知道它是如何在.NET里面有用...
Dim attributes = MyPropertyGrid.BrowsableAttributes
For Each A As Attribute In attributes
Dim Browsable As BrowsableAttribute = CType(A, BrowsableAttribute)
'Then how can I use this ? it's only property is Browsable (True/False)
Next
我本来试图解决一个问题,在这里我不知道是哪个对象属性网格中被选择,但我想收集对象的数据。
我不知道对象的类型是什么,因为它来自动态加载的DLL。我只知道它是另一个派生类,我知道。但我很有兴趣备份从属性网格获得的对象的属性,以便稍后保存和加载它们。
由于属性网格已包含所有这些值,我认为这种属性可能是编写更多代码的快捷方式。 PropertyGrid已经做到了,我不想用反射来检查代码。
你为什么要*使用它?你是否试图解决一些问题(哪一个?),并考虑可以使用这个属性或者是学术问题“RandomClass.RandomProperty对于什么是有用的”?答案是关于'PropertyGrid'和[msdn](https://msdn.microsoft.com/en-us/library/system.componentmodel.browsableattribute(v = vs.110).aspx)的教程中的某处。 – Sinatr
@Sinatr我更新了我的问题,没有答案不在教程中,我花了一些时间在这些msdn页面上找出答案。 –
*“我不知道属性中选择了哪个对象”* - 然后再次[XY问题](http://meta.stackexchange.com/q/66377/299295)。 **为什么**你需要知道这个?做什么? 'PropertyGrid.SelectedObject'是对象,您可以使用'is'或'GetType()'来确定类型。 – Sinatr