Separatorコントロールを含むWPF編集可能なComboBoxのオートコンプリートSystem.Windows.Controls.Separator

Separatorコントロールを含むWPF編集可能なComboBoxのオートコンプリートは、System.Windows.Controls.Separatorを示します。

このxamlで:


   
   
   

ユーザーはtoを使用して入力を開始し、残りの文字を自動入力することができます。 aはaaaaaになり、bはbbbbbになります。

しかし、問題は、セパレータを追加して、自動補完を免除するものをいくつか作成したい場合です。 私はこれを試した:


   
   
   
   

私がcを押すと、コンボボックスはcccccを選択肢として表示します。 また、私がSを押すと、奇妙なことにコンボボックスにSystem.Windows.Controls.Separatorが選択肢として表示されます(!)

私の期待は、オートコンプリートは、他の2つ(セパレータとccccc)がIsEnabled = "false"に設定されているので、aとbだけを入力することをサポートしています。

これにはどんな解決策がありますか? 私にお知らせください。

1

2 答え

アイテムコレクションを使用してヘッダーのようなものを導入することは、おそらくそれほど良い考えではないでしょう。これを含め、あらゆる種類の問題に遭遇します。 ComboBox のカスタムテンプレートまたはこの機能のプロパティを提供するカスタムコントロールを作成する方がよいでしょう。

1
追加された
@ Aki24x:いいえ、それは、私はあなたのコードを試したときに気づいた。
追加された 著者 H.B.,
おっとっと。申し訳ありませんが、ミスをしたことの1つは、「ヘッダー」として書いたことですが、xamlには「コンテンツ」を意味していました。それはあなたの答えに影響を及ぼしますか?いずれにしても、あなたの答えは大変ありがとうございます。
追加された 著者 Aki24x,
そうですか。ですから、基本的には、SeparatorなどのComboBoxに属さないものは含めないでください。カスタムテンプレートの作成について考えてみましょう。どうもありがとうございました!
追加された 著者 Aki24x,

将来の訪問者のための別の答え:今日この問題に遭遇し、受け入れられた回答が提案するようにカスタムテンプレートを作成するすべての作業を行う必要はありません。

私にとっては、リストは非常に限られているので、 SeparatorTextSearch.Text 添付プロパティを入力する可能性の低い文字に設定します。ここで私は著作権シンボルを使用します:


 
 
 
 

0
追加された