2012年11月6日火曜日

Visual Studio のデザイナが重い時の対策


VS上のデザイナを開いて作業をする際に、最初にクリックした瞬間固まる。
この現象はフォームのデザイン時に自作コントロールをツールボックス上から配置できるよう自動で処理が行われるためである。
この機能はVSの設定を変更すれば無効化出来る。
(ツール→オプション→Windows フォーム デザイナー→AutoToolboxPopulateを false にしてVS再起動)
しかし「自作のコントロールは表示して欲しいので無効化出来ない」といった場合がある。

その場合は、ツールボックスに表示する必要のないコントロールにToolboxItem属性を付加し、明示的に非表示にしてやれば良い。
ToolboxItem属性はツールボックスに表示するか等を制御できる属性でコンストラクタに true で表示、falseで非表示にできる。
継承元のコントロールに付加すると継承先のコントロールにも自動で適用される。
この方法で不要なコントロールを減らせば固まる動作を軽減出来る。
詳細は以下のページで↓
MSDN ToolboxItemAttribute クラス

設定例)
[ToolboxItem(false)] // falseで非表示、true で表示
public partial class TextBoxEx : TextBox
{

2 件のコメント :

  1. 返信
    1. 匿名さん こんばんは。
      お役に立てましたでしょうか。
      気づいたことなどがあれば教えていただけるとありがたいです。

      削除