I like intellisense however I don't like how when I finish typing something like a method name that has the name "Press" tries to autocomplete to "buttonpress" and when I press space bar to go to the next word or part of the code, it autocompletes to that and it's super frustrating. Is there any way to disable pressing spacebar for autocompleting but keep Tab to autocomplete?
Edit: I found the way to disable Enter or Tab for this (acceptSelectedSuggestion), but it doesn't list Space as one of the buttons that accepts the autocomplete suggestion.
Go to File -> Preferences -> Settings -> Text Editor -> Suggestions -> Quick Suggestions -> Edit in settings.json and add this line
"editor.acceptSuggestionOnCommitCharacter": false
Once code has been written, the only way I know of to view the overloads for a method is to actually edit the method by deleting the Parenthesis () and reopening them.
Is there a shortcut key that I could press to activate this instead of having to edit my files?
For an example, please reference the ShowDialog Overload screen shot below:
With your cursor inside the parentheses, use the keyboard shortcut Ctrl-Shift-Space. If you changed the default, this corresponds to Edit.ParameterInfo.
Example:
Ctrl+Shift+Space shows the Edit.ParameterInfo for the selected method, and by selected method I mean the caret must be within the method parentheses.
Here is the Visual Studio 2010 Keybinding Poster.
And for those still using 2008.
Tested only on Visual Studio 2010.
Place your cursor within the (), press Ctrl+K, then P.
Now navigate by pressing the ↑ / ↓ arrow keys.
The default key binding for this is Ctrl+Shift+Space.
The underlying Visual Studio command is Edit.ParameterInfo.
If the standard keybinding doesn't work for you (possible in some profiles) then you can change it via the keyboard options page
Tools -> Options
Keyboard
Type in Edit.ParameterInfo
Change the shortcut key
Hit Assign
It happens that none of the above methods work. Key binding is proper, but tool tip simply doesn't show in any case, neither as completion help or on demand.
To fix it just go to Tools\Text Editor\C# (or all languages) and check the 'Parameter Information'. Now it should work
Great question; I had the same issue. Turns out that there is indeed a keyboard shortcut to bring up this list: Ctrl+Shift+Space (a variation of the basic IntelliSense shortcut of Ctrl+Space).
The command Edit.ParameterInfo (mapped to Ctrl+Shift+Space by default) will show the overload tooltip if it's invoked when the cursor is inside the parameter brackets of a method call.
The command Edit.QuickInfo (mapped to Ctrl+KCtrl+I by default) will show the tooltip that you'd see if you moused over the cursor location.
I know this is an old post, but for the newbies like myself who still hit this page this might be useful.
when you hover on a method you get a non clickable info-box whereas if you just write a comma in the method parenthesis the IntelliSense will offer you the beloved info-box with the clickable arrows.
Every once and a while the suggestions above stop working, if I restart Visual Studio they start working again though.
you mean's change overload.
just Press Shift + ↑ / ↓
Mine showed up in VS2010 after writing the first parenthesis..
so, prams.Add(
After doings something like that, the box with the up and down arrows appeared.
I am developing the Internet Explorer Toolbar in c#.net using the band objects.
Now in my toolbar, I am using the textbox field to make the search enable, but in this textbox field, I am not able to use the backspace, delete, arrow keys and many other such button.
I am not sure about y I am not able to use this. Please help me about this. I found many question posted over like this, but none of them was having the specific answer.
Thanks
The problem is that the browser is eating the events for those keystrokes, so the solution is to force focus to the toolbar when the text box receives focus.
To fix it add this line to your toolbar's constructor:
yourTextBox.GotFocus += (sender, args) => OnGotFocus(args);
Also make sure you have implemented TranslateAcceleratorIO() per this example.
Compare your code to this one and see what's missing.
I have a normal textbox in my application.
I can paste data to it using my mouse (Right click -> Paste), but the shortcut Ctrl+V does nothing.
How do I fix that?
Make sure that yourTextBox.ShortcutsEnabled is set to true.
This behavior is enabled by default, so the question is rather what your code does to prevent it. Do you have any KeyDown/KeyUp/KeyPress event handlers that may intercept the CTRL+V keystrokes?
Similar issue in How do I allow CTRL-V (Paste) on a Winforms Textbox?
To quote Sandeep:
It is because in the aplliciation ctrl+v shortcut was already
defined(Edit menu-> Paste). After removing this...it work fine for
me....Hope that it helps....
In Visual Studio, when I press Enter, it automatically indents my text, and I don't like that. Is there a way to turn that 'feature' off?
Tools->Options->Text Editor->C#->Tabs->select none under Indenting or change the tab size to 0
Try changing:
Tools -> Options -> Text Editor -> C# -> Tabs -> Indenting
To "none"