您知道 TreeView 控件的 ImageList 属性如何列出窗体上的所有 ImageList 吗?我需要类似的东西,但有一个字符串列表。它类似于枚举,但在运行时定义,对象在 PropertyGrid 中公开属性。
因此,对于像 { "foo", "bar", "grill" } 这样的字符串列表,该属性应该列出这些,但是如果该字符串列表被更改(例如,添加一个“bbq”项),该属性应该枚举 { "foo", "bar", "grill", "bbq" } 代替。
您知道 TreeView 控件的 ImageList 属性如何列出窗体上的所有 ImageList 吗?我需要类似的东西,但有一个字符串列表。它类似于枚举,但在运行时定义,对象在 PropertyGrid 中公开属性。
因此,对于像 { "foo", "bar", "grill" } 这样的字符串列表,该属性应该列出这些,但是如果该字符串列表被更改(例如,添加一个“bbq”项),该属性应该枚举 { "foo", "bar", "grill", "bbq" } 代替。
如果它只是您需要的字符串列表,请查看编写您自己的TypeConverter
. 您需要覆盖该GetStandardValues
方法。
CodeProject 上的这篇文章解释了如何编写自定义TypeConverter
或UITypeEditor
.