EXEプロパティで視覚テーマを無効にしても、視覚テーマが無効にならない。

文書番号 : 25983     文書種別 : 不具合     最終更新日 : 2008/07/08
文書を印刷する
対象製品
InputMan for .NET 4.0J Windows Forms Edition
発生環境
Windows XP, Windows Vista
状況
回避方法あり
詳細
この問題はEditコントロールで発生します。
以下の条件がそろったとき、本来は視覚テーマなしで表示されるべきコントロールが、視覚テーマを使用して表示されます。
1. デスクトップの設定で視覚テーマを適用している。
2. ControlEffectプロパティが"ThemeSensitive"に設定されている。
3. アプリケーションのEXEファイルのプロパティの「互換性」タブで、視覚テーマを無効にする設定を行っている。
回避方法
Editコントロールが配置されているコントロールが貼り付けられているフォームのLoadイベントハンドラ等において、以下のように一旦ControlEffectをThemeSensitive以外に設定し、再度ThemeSensitiveに戻すことによって回避することができます。

[VB]
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

  Edit1.ControlEffect = ControlEffect.Normal
  Edit1.ControlEffect = ControlEffect.ThemeSensitive

End Sub

[C#]
private void Form1_Load( object sender, EventArgs e )
{
  edit1.ControlEffect = ControlEffect.Normal;
  edit1.ControlEffect = ControlEffect.ThemeSensitive;
}
キーワード
INMN06799

この文書は、以前は次のバグレポートIDで公開されていました : 7562