2010-12-14 3 views
1

プロパティグリッドのソースオブジェクトとして設定したクラスがあります。値は値リストから来ています:プロパティグリッドフィールドのオートコンプリート

class Person 
{ 
    ... 

    [TypeConverter(NationalityStringConverter)] 
    public string Nationality 
    ... 

class NationalityStringConverter: StringConverter 
{ 
    public override bool GetStandardValuesSupported(ITypeDescriptorContext context) 
    { 
     return true; 
    } 

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

    public override StandardValuesCollection GetStandardValues(ITypeDescriptorContext context) 
    { 
     // return my value collection 

今質問します。このリストを提案リストとして作成することは可能です。ただ、プロパティグリッドで追加されたコンボボックスのアイテムにアクセスしよう

comboBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
comboBox1.AutoCompleteSource = AutoCompleteSource.ListItems; 

Thxを4つの答え

答えて

0

を:同じ方法で、次のようなコンボボックスに設定します。 私はこれが可能であれば知っているが、試してみる価値はありません。)

0

をあなたが動作をオーバーライドし、EditValueがIWindowsFormsEditorServiceを使用して呼び出されたときに表示することができ、独自のリストボックスを作成することができるはずのUITypeEditorカスタムを作成した場合.DropDownControl。これにより、必要なコントロールにアクセスできる可能性があります。

PropertyGridにもControlAddedイベントがあります。このイベントを使用して、編集用に作成したリストボックスにアクセスすることができます。

私は現在自分自身でPropertyGridと対戦しているので、これらのオプションのいずれかが必要なものを提供するかどうかは分かりませんが、役立つかもしれません。

関連する問題