具有 StandardValuesSupported 和自动完成功能的 StringConverter

发布于 2024-07-18 07:39:30 字数 1026 浏览 4 评论 0原文

我想开发一个具有标准值的 StringConverter,将其附加到 PropertyGrid 后将像具有自动完成功能的组合框一样。 下面的示例将为我提供一个组合框,但没有自动完成功能 - 用户必须展开它并手动选择其中一项。 有没有一种方法允许用户键入其中一个选项的开头,以便组合框会自动选择匹配的选项?

   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

I want to develop a StringConverter with standard values, which after attaching it to a PropertyGrid will act like comboBox with autocompletion. The example below will give me a comboBox, but without the autocompletion - user have to expand it and choose manually one of the items. Is there a way to allow user to type the beginning of one of the options, so the combobox will automatically select the matching one?

   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");

  }

List returned by GetStandardValues has to be dynamic, so I can't use any enum there.
I took above example from: http://www.codeproject.com/KB/cpp/dropdownproperties.aspx

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

一萌ing 2024-07-25 07:39:30

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

I'm no expert but it sounds like you need a UITypeEditor. An example can be found here: http://www.codeproject.com/Messages/1020184/Re-combobox-values.aspx

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文