ComboBox.IsEditable プロパティ

定義

ComboBox のテキスト ボックス内のテキストの編集を有効または無効にする値を取得または設定します。

public:
 property bool IsEditable { bool get(); void set(bool value); };
public bool IsEditable { get; set; }
member this.IsEditable : bool with get, set
Public Property IsEditable As Boolean

プロパティ値

ComboBox が編集可能な場合は true。それ以外の場合は false。 既定値は、false です。

次の例では、画像をテキストではなく項目として含むコントロールを作成 ComboBox します。 プロパティが IsEditabletrue設定されている場合、 TextBox はイメージ ToString の メソッドによって返される値を表示します。 予期しないテキストを含む をTextBox回避するには、 プロパティと TextSearch.TextPath プロパティをTextSearch.Text使用して、表示するテキストを割り当てます。

<ComboBox IsEditable="true" TextSearch.TextPath="Name">
  <Image Name="Cat" Source="data\cat.png"/>
  <Image Name="Dog" Source="data\dog.png"/>
  <Image Name="Fish" Source="data\fish.png"/>
</ComboBox>
<ComboBox IsEditable="true">
  <Image TextSearch.Text="Cat" Source="data\cat.png"/>
  <Image TextSearch.Text="Dog" Source="data\dog.png"/>
  <Image TextSearch.Text="Fish" Source="data\fish.png"/>
</ComboBox>

もう 1 つの解決策は、 プロパティを DisplayMemberPath 使用することです。 の ComboBox ドロップダウン コントロールには画像は表示されませんが、割り当てたテキストが表示されます。

次の例は、DisplayMemberPath を使用する方法を示しています。


<ComboBox IsEditable="true" DisplayMemberPath="Name">
  <Image Name="CAT" Source="data\cat.png"/>
  <Image Name="DOG" Source="data\dog.png"/>
  <Image Name="FISH" Source="data\fish.png"/>
</ComboBox>

注釈

プロパティと IsReadOnly プロパティはIsEditableComboBoxユーザーが次のいずれかの操作を行うときの の動作を指定します。

  • 内の項目を選択する文字列を入力します ComboBox

  • 内の項目に対応しない文字列を ComboBox入力します。

  • テキスト ボックス内の文字列の一部を選択します。

  • テキスト ボックスに値をコピーまたは貼り付けます。

次の表では、 と IsReadOnlyの値IsEditableに応じて、ユーザーが実行できるアクションと実行できないアクションについて説明します。

IsReadOnlytrue です IsReadOnlyfalse です
IsEditabletrue です - 文字列を入力して 内 ComboBox の項目を選択できません。
- 内の項目 ComboBoxに対応しない文字列を入力できません。
- テキスト ボックスで文字列の一部を ComboBox 選択できます。
- テキスト ボックス内の文字列を ComboBox コピーできますが、テキスト ボックスに文字列を ComboBox 貼り付けることはできません。
- 文字列を入力して、 ComboBox 内の項目を選択できます。
- 内の項目に対応しない文字列を ComboBox入力できます。
- テキスト ボックスで文字列の一部を ComboBox 選択できます。
- テキスト ボックスに ComboBox 文字列をコピーまたは貼り付けることができます。
IsEditablefalse です - 文字列を入力して、 ComboBox 内の項目を選択できます。
- 内の項目 ComboBoxに対応しない文字列を入力できません。
- 内の文字列の一部を ComboBox選択できません。
- に文字列 ComboBoxをコピーまたは貼り付けることはできません。
- 文字列を入力して、 ComboBox 内の項目を選択できます。
- 内の項目 ComboBoxに対応しない文字列を入力できません。
- 内の文字列の一部を ComboBox選択できません。
- に文字列 ComboBoxをコピーまたは貼り付けることはできません。

が とfalse等しい場合IsEditableComboBox は を使用ContentPresenterして現在選択されている項目を表示します。が とTextBoxtrue等しい場合IsEditableは、 がこの目的で代わりに使用されます。 は TextBox プレーン テキストのみを表示し ComboBoxItem 、 には画像などのプレーンテキスト以外のコンテンツを含めることができます。

依存プロパティ情報

識別子フィールド IsEditableProperty
に設定されたメタデータ プロパティ true なし

適用対象