我有来自互联网源的这段代码,我认为这段代码可能适用于将 PropertyGrid 中的属性从文本框更改为组合框,但是在我运行它之后,它仍然是一个文本框。任何人都可以帮助解决这个问题吗?
public class Testing
{
private String _formatString;
[Category("Display")]
[DisplayName("Format String")]
[Description("Format string governing display of data values.")]
[DefaultValue("")]
[TypeConverter(typeof(FormatStringConverter))]
public String FormatString { get; set; }
public class FormatStringConverter : StringConverter
{
List<String> list = new List<String>();
public override bool GetStandardValuesSupported(ITypeDescriptorContext context) { return true; } // true means show combobox
public override bool GetStandardValuesExclusive(ITypeDescriptorContext context) { return true; } // true list to list, false will show the list, but allow free=form.
public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext …Run Code Online (Sandbox Code Playgroud) 我有一个propertygrid,需要在propertygrid内创建一个组合框并显示int值(1到9),我发现使用enum是最简单的方法,但是enum无法显示int值,即使我尝试将其强制转换为int ,但我不知道如何返回所有值。还有其他方法吗?提前致谢。下面是我的代码。
public class StepMode
{
private TotalSteps totalSteps;
public TotalSteps totalsteps
{
get { return totalSteps; }
set { value = totalSteps; }
}
public enum TotalSteps
{
First = 1,
Second = 2,
Three = 3,
Four = 4,
Five = 5,
Six = 6,
Seven = 7,
Eight = 8,
Nine = 9
}
}
Run Code Online (Sandbox Code Playgroud)