11

私は、いくつかのクラスがインデクサーを実装するコードベースを使用しています。

public double this[int i, int j]
{
    get { return ...; }
    set { ...; }
}

Visual Studio 2008 のようにコードに出くわすと、右クリックして "定義に移動"foo[1,2] = 3したいことがよくあります。つまり、上記の定義を Visual Studio エディター ウィンドウに表示します。

通常のプロパティまたはメソッドの場合、これは問題なく機能します。
foo.bar = 3クリック/「定義に移動」すると、foo.bar のソース コードに移動します。
過負荷の+場合、または==これも同様に機能します。
ただし、インデクサーでは、これは機能しないようです。これを達成する方法はありますか?

(適切なソース ファイルで文字列 "this[" を検索することさえできません。これは、クラス全体で同じ構文を使用してインデクサーにアクセスする可能性があるためです。このため、ドロップダウン リスト内のすべてのメソッドとプロパティを常にスクロールする必要があります。ファイル)

4

3 に答える 3

4

もちろん、これは 2008 ではあまり役に立ちませんが、2010 以降では、Navigate To コマンド ( C# キーボード レイアウトではctrl+ ) でこれを「修正」しました。,現在のソリューション内のインデクサーのリストを表示するために入力できる場所this。移動先のソリューションをダブルクリックできます。

キャレットがインデクサーの使用範囲内にあるときに F12 を押すと正常に動作するように見えるResharperの+1。

于 2012-08-29T16:44:36.290 に答える
2

You can install Resharper who give you this functionality, Tool Box productivity don't give this functionality

于 2012-08-29T15:39:54.380 に答える
0

あなたの最善の策は、おそらく の定義に移動し、fooそのクラスが何にインデックスを付けているかを確認することです。

于 2012-08-29T15:55:02.350 に答える