Breaking Change BC4415
Visible to All Users

The type of BarItemLinkControl properties has been changed to IBarItemLinkControl

We are preparing our bar controls to switching to optimized templates to gain maximum performance (GridControl and PropertyGridControl already use these templates in Optimized Mode). In this mode, bar items will not have a default visual tree in further major updates, so we changed the type of BarItemLinkControl properties to IBarItemLinkControl. While this modification mainly affects the internal implementation, some public properties (such as BarItemLinkBase.LinkControl) have been affected as well.

IBarItemLinkControl duplicates a public API of the standard FrameworkElement class to minimize required changes. There are two scenarios where manual modification is required, though.

  1. You have a variable of the BarItemLinkControl type and set it to the LinkControl object. For example:
C#
void Test(BarItemLink link) { BarItemLinkControl lc = link.LinkControl; //... }

In this case, it will be necessary to replace the BarItemLinkControl type with IBarItemLinkControl or use var.

  1. The LinkControl object is used as a parameter for a method that receives FrameworkElement or its descendant.
C#
Test(link.LinkControl); void Test(FrameworkElement element) { //... }

In version 18.1, it is necessary to additionally cast objects to this type:

C#
Test((FrameworkElement)link.LinkControl);

Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.