SyntaxEditor .NET Languages Add-on for WPF

Advanced C# and VB languages with automated IntelliPrompt and more

SyntaxEditor

If you are looking to add truly advanced editing functionality such as automated IntelliPrompt, type/member resolution, background parsing with AST building, syntax error reporting, automatic outlining and more to your applications that use the WPF SyntaxEditor, you need to get the .NET Languages Add-on.

It's easy to get up and running. With a few lines of code, you can reference external assemblies and other source code files to use for type/member resolution. Then you instantly have a Visual Studio-like code editing experience with full automated IntelliPrompt capabilities right in your own applications.

For customers who only require basic syntax highlighting, free C# and VB language implementations are included with the SyntaxEditor control.

Automated IntelliPrompt UI

IntelliPrompt UI features are an aid to the end user that support code completion and provide contextually-aware information about surrounding code.

Completion List

Completion List

Displays a number of auto-complete options for the end user to choose in response to Ctrl+Space. The context-sensitive completion data is populated with information from the reflection repository.

Parameter Info

Parameter Info

Automated parameter info tips show whenever typing an invocation, such as for a method call. The tips show detailed information about the invoked member along with details about the current argument being typed.

Quick Info

Quick Info

Automated quick info tips show whenever the mouse is hovered over words such as identifiers. The quick info tips display detailed information about the related type, member, variable, etc.

Code Snippet Selection

Code Snippet Selection

Shows a completion list for navigating through code snippet folders and selecting an applicable code snippet to insert. Code snippets use the same Visual Studio file format.

Code Snippet Templates

Code Snippet Templates

Each code snippet can declare multiple fields of text. When a code snippet template session is activated, the text is inserted and the end user can tab between the fields to edit their values.

Navigable Symbols

Navigable Symbols

Drop-downs positioned above the editor can show all type symbols on the left and member symbols within the selected type symbol on the right. The selections update as the caret is moved in the editor.

Advanced Features

Syntax Highlighting

Syntax Highlighting

Syntax highlighting makes it easier to visually distinguish things like keywords, strings, and comments while editing.

Code Outlining

Code Outlining

Automatic code outlining is performed based on the parser's AST results, ensuring types and members are collapsible. Region blocks can be collapsed as well.


Editing Productivity

Line Commenting

Built-in functionality can be called from menus/toolbars to comment and uncomment code lines.

Smart Indent

Smart indenting occurs when the Enter key is pressed and determines how far to indent text on the next line based on the contents of the code that surrounds the caret.

Text Formatting

A text formatter is available that can beautify C# and VB documents by properly indenting the code and normalizing whitespace.

Delimiters

Delimiter (bracket) highlighting and delimiter auto-completion features are included.


Documentation Comment Editing

Stub Generation

When typing /// (C#) or ''' (VB) immediately before a type or member, stub documentation comments will automatically be inserted.

New Lines

As Enter is pressed within a documentation comment, /// (C#) or ''' (VB) are auto-inserted on the next line for continuation of the comment.

Tag Completion List

A context-sensitive completion list of tags is displayed whenever typing a new start tag within documentation comments.

End Tag Auto-Complete

When typing a '>' to close a start tag, the appropriate end tag is auto-inserted.


Parsing

Specification Compliance

The C# and VB parsers are designed according to their official language specifications, ensuring that syntax errors are located properly.

Full AST Generation

The language parsers output an AST (abstract syntax tree) for each document parsed. This tree consists of a node for every code construct in the document (type declaration, statement, expression, etc.).

Reflection Repository

The add-on manages reflection data for both .NET assemblies as well as source code files. All of this data is stored in a queryable repository, used for automated IntelliPrompt.

Syntax Error Reporting

The parser keeps track of syntax errors and renders squiggle lines under each error. Hover over the squiggle line to see the error description.


Other Features

Code Fragments

Code Fragments

There can be situations where an end user should only see and edit the contents of a specific method or property, or perhaps only a certain statement or expression. Code fragments support this scenario, enabling full parsing and automated IntelliPrompt.

Windows Workflow Designer

Windows Workflow Designer

SyntaxEditor and its .NET Languages Add-on can be used as the expression editor within a rehosted Windows Workflow Designer instance, which allows for automated IntelliPrompt when editing variables in expressions. Learn more.

Syntax Languages

The SyntaxEditor .NET Languages Add-on includes these advanced syntax language implementations, for use with the WPF SyntaxEditor control:

C#
Visual Basic

This premium add-on is sold separately from SyntaxEditor and control bundles.


Explore the WPF SyntaxEditor

Next Steps

Free Evaluation

The best way to learn about our UI controls and their features is to download a free trial. This will allow you to see samples, documentation, and integrate them into your own apps.

Download Trial

Need Help?

Do you have any licensing or sales questions? Do you have a technical question while evaluating? Please contact us so that our friendly staff can assist you.

Contact Us

Licensing

When your app's development team is licensed, you can distribute an app using our royalty-free UI controls to anyone. Our purchase page helps you calculate the licensing to meet your needs.

Purchase Licenses