How to disable undesirable auto-complete with Visual Studio + ReSharper?
I'm using Visual Studio 2010 and ReSharper 5.
I define this at the top of a .cs file.
#if X86
using size_t = System.Int32;
#else
using size_t = System.Int64;
#endif
Then I can use size_t and know that it is a native integer, 32 bits if compiled as a 32 bit assembly, and 64 bits if compiled as a 64 bit assembly. (for those that are curious, the alternatives are always use Int64, or branch at runtime on IntPtr.Size == 4 and have two versions of the code. I prefer this solution.)
However, if I type size_t and hit space, it will be automatically converted to Int64 (or Int32 if X86 is defined). Obviously that's undesirable.
I went into ReSharper options and went to Environment \ Intellisence \ Completion behavior and disabled all the checkboxes under "Automatically complete single it开发者_如何学Cem with:".
It still happens, is there anything else I can try?
I ran into a similar issue (using VS2013 and Resharper 8.2).
To stop the undesirable auto-completion on every "space" hit, I had to disable IntelliSense completion on "space" both within VS and R# options:
- VS > Tools > Options > Text Editor > C# > IntelliSense > "Committed by pressing the space bar" checkbox
- VS > Resharper > Options > Environment > IntelliSense > Completing Characters > C# "Complete on space" checkbox
Cheers!
One solution would be to toggle to suggestion completion mode for intellisense. The default key binding for the toggle is Ctrl+Alt+Space
. When in suggestion mode, it will only change what you type if you explicitly choose a value to change to. You can read more about it here:
http://blogs.msdn.com/b/zainnab/archive/2012/05/01/9943045.aspx
In the VS2017 menu hierarchy the suggestion mode can be found under:
Edit -> Intellisense -> Toggle Completion Mode
Additionally when the suggestion mode is enabled, it is visually indicated by the following button (and can also be enabled/disabled by clicking the button):
To turn IntelliSense options OFF by default
On the Tools menu, click Options.
Select the Text Editor folder.
Select the folder for the language you want to customize IntelliSense.
In the General property page, clear check boxes for IntelliSense features that you do not want:
Auto list members applies to List Members
Parameter information applies to Parameter Info
You can use the escape key to cancel the current intellisense suggestion.
In VS 2019 and ReSharper 2020 toggling completion mode doesn't solve the issue - suggestions are applied when spacebar is hit. To have it working one has to go to:
Extensions -> ReSharper -> Options... -> IntelliSense -> Completing Characters
and uncheck Complete on space
for a respective programming language
精彩评论