web-dev-qa-db-ja.com

Visual Studio 2010-XAMLエディターが異常に遅い

他の誰かがVS 2010のXAMLエディターで信じられないほど遅いパフォーマンスを経験していますか?ファイル数が制限された新しいプロジェクトがある場合、パフォーマンスは良好です。ただし、多数のXAMLファイルを含むプロジェクトがある場合、XAMLエディターが数秒ごとに断続的にハングし、ほとんど使用できなくなります。

また、DevExpress 2010を参照している特定のプロジェクトでのみパフォーマンスが低下することにも注意してください。これが関連しているかどうかはわかりません。

この問題の解決策に関する提案があれば、大歓迎です。

クリス

57
Chris

Visual Studio 2012の場合:

に行く

Tools > Options > TextEditor > XAML > Misc 

小切手 Always open documents in XAML viewとチェックボックスをオフにしますAutomatically populate toolbox items

Visual Studio 2015、2017:

に行く

Tools > Options > XAML Designer 

Automatically populate toolbox items

これは私の同じ問題を修正しました。

61
Jalal

ビジュアルデザイナーが必要ない場合は、visual studioで別のエディターを選択できます。

Xamlファイルを右クリック-> [アプリケーションから開く...]->ソースコード(テキスト)エディター

分割ビューのみが失われ、インテリセンスなどは引き続き機能します。
デザイナで何かをチェックする必要がある場合でも、[ビューデザイナ]をクリックして、通常のXAMLエディタを再度開くことができます。

ビジュアルデザイナーのパフォーマンスを向上させたい場合は、DesignerProperties.GetIsInDesignModeコードビハインドで。ビジュアライザは、コントロールをインスタンス化して表示方法を認識し、コードビハインドの一部を実行します。

37

OPと同様に、DevExpress WPFコントロールに大きく依存するプロジェクトのxamlエディターで極端な遅延がありました。ここに掲載されている他のソリューションでこの問題を解決するために失敗した後、私は最終的に自分のソリューションユーザーオプション(.suo)ファイルを削除しようとしました。ソリューション(.sln)ファイルと同じフォルダー内。これはすぐに問題を解決しました。重要なもの(ビルド構成など)をリセットできるように、--- この投稿 ビジュアルスタジオがsuoファイルに保存する内容について読みたい場合があります。たとえば、鉱山は常にデフォルトでアクティブソリューションプラットフォームを「混合プラットフォーム」に戻します。 )

9
Erikest

短い回答:デザイナーをあまり使用しない場合は、XAMLの既定のエディターを置き換えるだけで、XAMLビジュアルデザイナーがなくなり、処理速度が向上します。 XAMLファイルを右クリックし、[プログラムから開く...]をクリックして、別のデフォルトエディターを選択します。ソースコード(テキスト)エディターは問題なく動作します。

今ではそれはもう大丈夫です。詳細を理解し、遅いデザイナーを完全に排除したい場合は、長い答えを読んでください。

長い答えここ は、何が起こり、なぜそれが遅いのかについての素晴らしい説明です。

XAMLのビジュアルデザイナーを完全に無効にするための、前述の記事に基づく簡単な作業:

  1. [ツール]-> [オプション]-> [テキストエディタ]-> [XAML]-> [その他]-> [デフォルトビュー]の下で、常にドキュメントを完全なXAMLビューで開きます。
  2. タスクマネージャーを開き、XAMLデザイナープロセスを終了しますXDesProc.exe(注:VS2013の場合は、このプロセスを右クリックして、含まれているフォルダーに移動します。exeの名前をelseに変更してから、プロセスを終了します)
  3. 標準のXAMLエディターはこのプロセスを再度ロードします(VS2013とP.2で実行されるアクションでは成功しないと思います)。ただし、任意のXAMLファイルを右クリックし、[アプリケーションから開く...]をクリックして、別のデフォルトエディターを選択します。ソースコード(テキスト)エディターは問題なく動作します。
5

開発エクスプレスを使用しているときに、Visual Studioデザイナーで応答が遅れていることに気付きました。これは、DevExpress製品のライセンス認証によるものと思われます。

"Licenses.Licx"ファイル(プロジェクトプロパティフォルダにあります)を削除すると、パフォーマンスが著しく向上します。

注:ライセンスファイルを削除しても、DevExpressコントロールを使用できます。しかし、それはVSが絶えずそれを認証することを止めます。

4
Cr1spy