- PR -

C# TextBoxのEnabled=false時、ForeColorを変更できませんが

投稿者投稿内容
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-06-23 11:17
引用:

邪道ですが,


UpdateDefaultButton オーバライドして、
ReadOnly = true; の状態のコントロールに行かないようにするのが 1 番軽いし簡素だと思います。
連続で発生しないように調整は必要ですが。



_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
ognac
ベテラン
会議室デビュー日: 2005/06/21
投稿数: 65
投稿日時: 2005-06-23 11:39
ognacです

>ReadOnly = true; の状態のコントロールに行かないようにするのが 1 番軽いし簡素だ
そうですね.
ただ, 元投稿者の文面から, <Mouse.Clickでのカーソル位置付けを抑制したい>
と勝手に想像したものですから..
ognac
ベテラン
会議室デビュー日: 2005/06/21
投稿数: 65
投稿日時: 2005-06-23 11:44
ognacです
ごめんなさい.
不手際は 3連続投稿になったみたいです.
二件を取り消す事ってできますか?
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-06-23 12:11
引用:

ただ, 元投稿者の文面から, <Mouse.Clickでのカーソル位置付けを抑制したい>
と勝手に想像したものですから..


インターセプトしてるので、抑制できると思いますが...

引用:

不手際は 3連続投稿になったみたいです.
二件を取り消す事ってできますか?


編集から、[この投稿を削除] にチェック。



_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
CMSK
会議室デビュー日: 2005/06/22
投稿数: 3
投稿日時: 2005-06-23 16:06
CMSKと申します。

私も前に同じような状況に遭遇しました。
私が取った手としては、TextBoxから派生したコントロールを作って、
タブストップを外して、ウィンドウプロシージャをオーバーライドして
マウスイベント(WM_MOUSEFIRST〜WM_MOUSELAST)を無視するようにしました。
タブストップを外して、マウスイベントを無視すればフォーカスを当てることが
出来ないので、Disableな状態と同じになります。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-06-23 21:50
 “使用不可”と“表示のみ”は違うと思うんですね。表示はされているのに、その表示されているものを利用できない(選択してコピーできない)なら、Labelに張り替えてしまえばいいじゃない、と思うのです。

 「仕様で、Enabledプロパティの操作にて実現しなければなりません」というのは、とってもナンセンスな仕様だと思います。先に示したように、“状態”を表す列挙体とインターフェイスを定義して、“状態”として制御するべきと思います。
 もちろん、開発者の呼び出し方法と、ユーザの操作、見栄えを統一するためです。
_________________

スキルアップ/キャリアアップ(JOB@IT)