ツールの画面に項目が表示されず真っ白になります

と、お問い合わせを頂いて調べていると、どうやらWPFを使ったプログラムで稀に起こるという事がMicrosoftのサイトに書かれていました。

最近作成しているツールは、WPF(Windows Presentation Foundation)と言う機能を使って作ってます。

WPFを使用するとグラデーションなどが綺麗だったり、この先Macへの移植なども考えているのでMVVM(Prism)という方法を使って画面とプログラムを分離するようにしています。

Macへ移植する場合に基本は画面部分が別物になるので、内部の処理はそのまま使用できるようにするためなんですね。

て、話が別の方向に行ってしまいましたが・・・

話を元に戻して、

ツールの画面が真っ白になる現象でお困りでしたらこれから説明する方法を試してみてください。

WPFプログラムでのグラフィックスハードウェアの機能を無効にする。

  1. [スタート] – [ファイル名を指定して実行] に regedit と入力し、[OK] をクリックします。
  2. レジストリ エディターが開きますので、左ペインから以下のパスを表示します。
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\Avalon.Graphics

    ここからは、値の追加です。

  3. 上記パス上(Avalon.Graphics)で右クリック。
    [新規] から [DWORD(32ビット) 値] を選択し、以下の値を作成します。
    値の名前: DisableHWAcceleration
    値の種類: REG_DWORD
    値のデータ: 1
  4. アプリケーションを再起動します。

この設定で、正常にツールの画面が表示されるようでしたら、ツールで使用しているWPF(Windows Presentation Foundation)という画面表示機能でのハードウェアとの相性の問題かと思いますので、この設定のままご使用すれば問題はありません。

ただ、画面表示にハードウェアを使用しなくなるので若干遅くなるかもしれませんが・・・