Visual Studio の固定スクロールとは

大きいコード ファイルで作業するときや、よく知らないコードベースをスクロールするときに、コード内で今いる場所を特定するのが難しい場合があります。 Visual Studio 2022 バージョン 17.5 で最初にプレビューになった固定スクロールを使うと、エディターの上部にスコープを "固定"でき、コードを "スクロール" している間も常に表示されるようになります。

サポートされるプログラミング言語

C#、C++、XAML、JSON など、複数のコード形式がサポートされています。

C# ファイルでの固定スクロールのアニメーション化された例を次に示します。

C# のコードで使われている固定スクロール機能のアニメーション。

C++ ファイルでの固定スクロールのアニメーション化された例を次に示します。

C++ のコードで使われている固定スクロール機能のアニメーション。

固定スクロールをオンまたはオフにする

  1. Visual Studio のメニュー バーで、[ツール]>[オプション]>[テキスト エディター]>[全般] を選びます。
  2. [固定スクロール] セクションで、[Group the current scopes within a scrollable region of the editor window] (エディター ウィンドウのスクロール可能な領域内で現在のスコープをグループ化する) チェックボックスをオンにします。

固定スクロールをオフにする場合は、エディターで固定スクロールのヘッダー領域を右クリックして、[固定スクロール] を選びます。

重要

C# を使っていて、固定スクロールが機能しない場合は、この回避策を試してください。 [ツール]>[オプション]>[テキスト エディター]>[C#]>[詳細] を選びます。 次に、[ブロック構造のガイド] セクションで、次のオプションを有効にします。

オプション 説明
宣言レベルのコンストラクトのガイドを表示 名前空間、クラス、メソッドの初期化に影響します
コード レベルのコンストラクトのガイドを表示 条件とループに影響します

固定スクロールのしくみ

固定スクロールを使うと、名前空間、クラス、メソッド、ループ初期化ステートメント、条件などのスコープを固定できます。

また、固定スクロール ヘッダーで参照をクリックすることで、コード行に直接ジャンプできます。

コードに移動する、固定スクロール ヘッダーでのシングルクリック オプションのアニメーション。

固定スクロールを構成する方法

固定スクロールの動作方法を変更するには、スコープと、そのスコープに含まれる行数を変更します。

内側と外側のスコープ

好みに基づいて、固定スクロールで表示されるスコープを変更できます。 既定で設定される外側スコープ オプションでは、ファイルの先頭から取得される上位レベルのスコープが表示されます。

外側のスコープが選ばれている固定スクロールのアニメーション。

ただし、名前空間とクラスの名前がファイル名と一致している場合があります。 このような情報が明らかなときは、ファイルの先頭にある 2 行の垂直領域を使いたくない場合があります。 そのような場合は、下位レベルの内側スコープ オプションに変更できます。これにより、深く入れ子になったコードをスクロールすると、より高いレベルのスコープがプッシュされます。

内側のスコープが選ばれている固定スクロールのアニメーション。

設定されているスコープの数が最大値を超えた場合に、外側と内側のどちらのスコープを優先するかを構成できます。 Visual Studio のメニュー バーで、[ツール]>[オプション]>[テキスト エディター]>[固定スクロール] を選び、[Prefer outer scopes] (外側のスコープを優先する)[Prefer inner scopes] (内側のスコープを優先する) を切り替えます。

固定スクロールの内側と外側のスコープ オプションのスクリーンショット。

次のステップ

Visual Studio での固定スクロールについて詳しくは、次のリソースをご覧ください。