プロジェクトがクラス ライブラリであり、Application.EnableVisualStyles() が設定されていないプログラムにプロジェクトが読み込まれている場合に、ビジュアル スタイルを有効にする方法を教えてください。私はこれに2日間苦労しています。これは C# です (以前の C++ の例と VB で動作する可能性のあるものをいくつか見てきましたが、C# とそれが可能かどうかについては明確に説明されていません)。
コントロールを作成する前にクラス ライブラリから Application.EnableVisualStyles() を実行しようとしましたが、Application.Run() が完了する前に実行する必要があるようで、Application.Run( ) が呼び出されるのは、これがプラグイン (VMware の仮想インフラストラクチャ クライアント) としてサード パーティのアプリに入るためです。
マニフェスト ファイルを作成しようとしましたが、クラス ライブラリをコンパイルした後、マニフェスト ファイルを ProgressBar.dll にリンクします: mt.exe -manifest ProgressBar.dll.manifest -outputresource:ProgressBar.dll;2
これが機能しないことを除いて。ProgressBar クラス ライブラリを使用するダミー アプリケーションを作成し、マニフェストをそのアプリケーションの exe にリンクすると、ビジュアル スタイルが表示されます (基本的に、プロジェクト プロパティのアプリケーション セクションでマニフェスト ファイルを指定する長い方法を実行しています)。
今のところ私のボタンは見栄えが悪いですが、一番イライラするのは、ProgressBar コントロールが Marquee スタイルで動作しないことです。すぐに、独自の Marquee スタイルの ProgressBar を作成するか、その場所にアニメーション GIF を挿入する必要があります。ボタンに関しては、より一貫した結果を得るために Infragistics ボタンの使用を開始できると思います。
いつもありがとうございます!