2009-06-18 24 views
6

グリッドがあり、オブジェクトをクリックして詳細画面に表示されているとします。私は無効にTextBoxを設定するので、私はいくつかのデータを編集するユーザーをしたくないですか?拘束力はありますか?基本的に私が欲しいのは、TextBoxをグレイアウトしたり無効にしたりすることですか? WPFではどうですか?誰か説明できますか?WPF:読み取り専用TextBoxとバインディング

答えて

20

はい、バインディングは無効なテキストボックスで機能します。テキストボックスを無効にするには、3つのオプションがあります。

  • IsReadOnlyプロパティをtrueに設定します。これは、テキストボックスの外観には影響しませんが、ユーザーがテキストボックス内の値を変更するのを停止します。

  • IsEnabledをfalseに設定します。これでテキストボックスがグレーアウトされ、フォーカスを受け取らなくなります

  • ラベルまたはテキストブロックを使用します。これにより、編集可能なコントロールに表示されることなく、テキストが画面上に配置されます。

バインディングについては、あなたが何をしても同じように動作します。 Xamlまたはコードビハインドのいずれかでバインディングを通常どおり設定し、通常のようにバッキングプロパティが変更されたときに値が更新されます(INotifyPropertyChangedが実装されている場合は、一度しか設定されません)

4

のTextBoxにIsReadOnlyプロパティがあり、ちょうどそれは私が使用する真

3

に設定<のTextBlock/>または<ラベル/ >代わり<のTextBox/>の静的データを表示します。

関連する問題