web-dev-qa-db-ja.com

Visual Studio + ReSharperで望ましくないオートコンプリートを無効にする方法は?

Visual Studio 2010とReSharper 5を使用しています。

これは.csファイルの先頭で定義します。

#if X86
using size_t = System.Int32;
#else
using size_t = System.Int64;
#endif

次に、size_tを使用して、それがネイティブ整数であることを確認できます。32ビットアセンブリとしてコンパイルした場合は32ビット、64ビットアセンブリとしてコンパイルした場合は64ビットです。 (好奇心が強い人のために、代替手段は常にInt64を使用するか、実行時にIntPtr.Size == 4で分岐し、2つのバージョンのコードを持っています。私はこのソリューションを好みます。)

ただし、size_tと入力してスペースを押すと、自動的にInt64(またはX86が定義されている場合はInt32)に変換されます。明らかにそれは望ましくありません。

私はReSharperオプションに行き、環境\ Intellisence \完了動作に行って、「単一アイテムを自動的に完了する:」の下のすべてのチェックボックスを無効にしました。

それでも起こりますが、他に何か試すことはできますか?

28
Eloff

同様の問題が発生しました(VS2013とResharper 8.2を使用)。

「スペース」がヒットするたびに不要なオートコンプリートを停止するには、VSとR#オプションの両方で「スペース」のIntelliSense完了を無効にする必要がありました。

  1. VS>ツール>オプション>テキストエディター> C#> IntelliSense> "スペースバーを押してコミット"チェックボックス
  2. VS> Resharper>オプション>環境> IntelliSense>文字の完成> C#「スペースで完成」チェックボックス

乾杯!

24
bobocoder

1つの解決策は、インテリセンスの提案完了モードに切り替えることです。トグルのデフォルトのキーバインディングはCtrl+Alt+Space。提案モードでは、変更先の値を明示的に選択した場合にのみ、入力内容が変更されます。あなたはここでそれについてもっと読むことができます:

http://blogs.msdn.com/b/zainnab/archive/2012/05/01/9943045.aspx

17
Malgaur

IntelliSenseオプションをデフォルトでオフにするには

[ツール]メニューの[オプション]をクリックします。

テキストエディタフォルダを選択します。

IntelliSenseをカスタマイズする言語のフォルダーを選択します。

[全般]プロパティページで、不要なIntelliSense機能のチェックボックスをオフにします。

自動リストメンバーはリストメンバーに適用されます

パラメータ情報はパラメータ情報に適用されます

5
Raghav

エスケープキーを使用して、現在のインテリセンスの提案をキャンセルできます。

4
Tod