---
# System prepended metadata

title: What's New in v22.2.4

---

# What's New in v22.2.4

## Code Analysis

### New Diagnostics for DevExpress WPF Components

* **Use DependencyObjectExtensions.DataContext to define bindings for generated columns** - Improve performance by defining bindings in column templates using the DependencyObjectExtensions.DataContext attached property. (Xaml diagnostic)
[Documentation](https://docs.devexpress.com/WPF/10121/controls-and-libraries/data-grid/examples/mvvm-enhancements/binding-to-a-collection-of-columns)
* **The column’s FieldName or Binding property is not defined** - Specify the FieldName or Binding property to connect the column to data. To create an unbound column, set the FieldName property to a string that does not match an existing field name. (Xaml diagnostic)
[Documentation](https://docs.devexpress.com/WPF/120400/controls-and-libraries/data-grid/grid-view-data-layout/columns-and-card-fields/binding-columns-to-data-source-fields)
* **Columns with the specified Binding property are read-only** - Set the binding’s Mode property to TwoWay to allow users to edit column values. (Xaml and C# diagnostic)
[Documentation](https://docs.devexpress.com/WPF/120400/controls-and-libraries/data-grid/grid-view-data-layout/columns-and-card-fields/binding-columns-to-data-source-fields)
* **Missing EndUpdate call** - The BeginUpdate method call requires a subsequent EndUpdate method call. Otherwise, the control's UI will remain locked. (C# diagnostic)
* **Missing BeginUpdate and EndUpdate calls** - Call the BeginUpdate and EndUpdate methods to process collection updates in batches. (C# diagnostic)
* **BeginUpdate call in a loop** - Call the BeginUpdate and EndUpdate methods outside a loop to batch process collection updates. (C# diagnostic)

## Camel Case Navigation and Selection
![Camel Case Navigation and Selection now work inside TextBoxes](https://downloads.devexpress.com/Share/IDE/VSMarkeplace/Assets/CamelCaseNavInsideTextBoxes.png)

Camel Case navigation and selection features now work inside TextBoxes **everywhere** in Visual Studio, including the following locations:

* Visual Studio's new **Inline Rename** window
* The **Solution Explorer** (when renaming files)
* The **Properties** windows (for text properties)
* Search filters

[Documentation](https://docs.devexpress.com/CodeRushForRoslyn/120203/coding-assistance/selection-tools/camel-case-selection)

## Programming Style

You can now specify whether CodeRush should emit optional parenthesis around switch expression operands (C# 8.0+).

![](https://downloads.devexpress.com/Share/IDE/VSMarkeplace/Assets/OptionalSwitchExpressionParens.png)

This setting is currently used by CodeRush's "Apply the 'Optional parentheses' style to explicitly specify the order of operations" code cleanup rule.

## Improved Visual Studio 17.5 support

We patched a number of CodeRush features to work correctly with the Visual Studio 17.5.0 release.

## Resolved Issues

[T1148064](https://www.devexpress.com/issue=T1148064) - Extract Interface - Visual Studio crashes when the Inline UI is used for the Rename refactoring
[T1146599](https://www.devexpress.com/issue=T1146599) - Code Formatting - csharp_new_line_before_open_brace setting in the editorconfig file is not taken into account
[T1137318](https://www.devexpress.com/issue=T1137318) - Code Cleanup adds unnecessary parentheses around expressions in a list initializer
[T1137878](https://www.devexpress.com/issue=T1137878) - Code Cleanup - CodeCleanupHangedException is raised when executing the Add Copyright Header rule
[T1133546](https://www.devexpress.com/issue=T1133546) - Coderush highlight output does not color a final message if timestamps are enabled

