0
TextBox
から継承するカスタムコントロールがあります。キューのテキストが表示されるように、Cue
プロパティを追加しました。キューテキストを表示するには:EnabledまたはReadOnlyを使用せずにテキスト入力を無効にする
SendMessage(this.Handle, 0x1501, (IntPtr)1, myCueText);
私はテキストボックスを無効にする必要があり、キューテキストは表示されたままにしておきます。私は試しました:
textBox.ReadOnly = true;
textBox.BackColor = SystemColors.Window;
上記のコードは、キューのテキストを消滅させます。私はEnabled
を使ってみましたが、上記と同じ効果があります。
テキストボックスを無効にする代替方法はありますが、キューのテキストは引き続き表示されますか?
キューバナーの全体のポイントは、ユーザーに彼らがテキストボックスに入力する必要があるかについてのヒントを与えることです。テキストボックスに入力できない場合は、キューバナーのポイントは何ですか?無効になっているテキストボックスの内部にテキストを表示する必要がある場合は、TextプロパティとEnabledプロパティを設定します。テキストはグレー表示/非表示になり、キューバナーのように表示されます。 –
[Here](http://stackoverflow.com/a/36534068/3110834)は、ヒント(または透かしまたはキュー)の表示をサポートする 'TextBox'の実装です。 **•**ヒントMultiLineがtrueのとき ** ** ** WM_PAINTメッセージの処理とヒントの描画に基づいています。ヒントをカスタマイズして、ヒントカラーのようなプロパティを追加することも、ヒントを表示するタイミングを決定することもできます。 –
'!this.Focused'の代わりにリンクされた' TextBox'のカスタマイズとして、 '(!this.Focused || this.ReadOnly)'を使うことができます。この方法で、ヒントは 'ReadOnly'テキストボックスに表示されます。 –