ReSharper 2022.3 Help

C# Parameter Name Hints

ReSharper options: Environment | Inlay Hints | C# | Parameter Name Hints

Use this settings page to configure inlay hints for parameter names at function calls.

Visibility

Use the selector to choose how parameter name hints should be displayed in the editor: choose Default to apply the general visibility preference from the Environment | Inlay Hints | General page of ReSharper options , choose Show Always or Never Show to always show or hide hints, or choose Push-to-Hint to hide the hints by default but show them when you press and hold Ctrl.

Hide for non-literals

Hides parameter name hints for arguments that are variables, resources, expressions, or invocations allowing you to configure exceptions for specific kinds of non-literal arguments.

Hide for builder-like methods

Hide parameter name hints for methods similar to methods of System.Text.StringBuilder, which return a modified object of their containing class. Names of such methods normally make clear the purpose of their parameters.

Hide if method parameters only differ by numbered suffix

Hides parameter name hints when calling methods with signatures similar to

void DoSomething(int arg0, int arg1, int arg2, int arg3) {/*...*/}

Hide if intention of first parameter is clear from method name

Hides parameter name hint on the first argument when calling methods with signatures similar to

void SetExtension(string extension, object next) {/*...*/}

Hide if intention of argument is clear from usage

For methods with signatures similar to

void DoSomething(int value, object context) {/*...*/}

hides the value parameter name hint if the method is called like so

DoSomething(myValue, context: null);

Hide parameter name hints for parameter arrays

Hide parameter name hints if method is annotated as 'StringFormatMethod'

This option hides parameter name hints for String.Format-like methods marked with the StringFormatMethodAttribute.

You can configure a list of method patterns for which the parameter name hints will be always hidden, independently of other preferences.

Patterns are matched against fully qualified method name, parameter count, and parameter names. For example:

  • System.Math.* matches all methods whose FQN starts with System.Math

  • System.Math.*(*, *) matches all methods from System.Math namespace with two parameters

  • (*info) matches all single-parameter methods where the parameter name ends with info

  • (key, value) matches all methods with parameters key and value

  • Put(key, value) matches all Put methods with parameters key and value

Last modified: 08 March 2021