2012-03-20 34 views
1

Numeric UpDownコントロールを無効にしたときでも、そのユーザーはその値を読み取ることができます。しかし、私はそのツールのForecolorまたはBackcolorを変更することはできません。 Enabled/Disabledプロパティの代わりにReadOnlyプロパティを使用しようとしましたが、どちらも機能しません。どうすればこの問題を解決できますか?無効にされた数字のアップダウンの前景色/背景色を変更するにはどうすればよいですか?

+0

'ReadOnly'プロパティでは何が動作しませんか? – ken2k

答えて

0

私はVS2005と単純なWinFormsで試しました。私はあなたが基本NumericUpDownをクラスから派生した独自のNumericUpDownをクラスを作成する場合は、単にその有効な状態

private void button2_Click(object sender, EventArgs e) 
{ 
    this.numericUpDown1.Enabled = ! this.numericUpDown1.Enabled; 
} 

を交換し、中にそれを置くために、フォームに別のボタンをEnableChangedイベント

private void numericUpDown1_EnabledChanged(object sender, EventArgs e) 
{ 
    NumericUpDown nud = (NumericUpDown)sender; 
    nud.BackColor = nud.Enabled ? Color.Yellow : Color.Red; 
} 

に入れて、コメントを追加しましたそれは、明示的にすべてのフォームでこの色を変更することなく、あなたのアプリで使用されるあなたのクラスのすべてのインスタンスに対して行います。

0

フレームワークコントロールでこの目標を達成する方法はありません。 カスタム描画を使用して実装することができます。

関連する問題