具有StandardValuesSupported和Autocompletion的StringConverter

时间:2009-04-28 13:20:25

标签: c# winforms propertygrid

我想开发一个带有标准值的StringConverter,在将它附加到PropertyGrid之后,它将像自动完成的comboBox一样运行。下面的例子将给我一个comboBox,但没有自动完成 - 用户必须展开它并手动选择其中一个项目。有没有办法让用户输入其中一个选项的开头,那么组合框会自动选择匹配的选项吗?

   public class ConverterSample : System.ComponentModel.StringConverter
   {        
      public override bool GetStandardValuesSupported(ITypeDescriptorContext context)
      {
         //true means show a combobox
         return true;
      }

      public override bool GetStandardValuesExclusive(ITypeDescriptorContext context)
      {
         return false;
      }


      public override TypeConverter.StandardValuesCollection GetStandardValues(ITypeDescriptorContext context)
      {         
         return new StandardValuesCollection(new List<string>(){"Stack", "overflow", "rules");

  }

GetStandardValues返回的列表必须是动态的,所以我不能在那里使用任何枚举。 我从上面的例子:http://www.codeproject.com/KB/cpp/dropdownproperties.aspx

1 个答案:

答案 0 :(得分:0)

我不是专家,但听起来你需要一个UITypeEditor。可以在此处找到一个示例:http://www.codeproject.com/Messages/1020184/Re-combobox-values.aspx