Skip to main content

DashboardDesigner.DashboardCustomPropertyChanged Event

Occurs when the custom property value in the Dashboard Designer is changed.

Namespace: DevExpress.DashboardWin

Assembly: DevExpress.Dashboard.v24.1.Win.dll

NuGet Package: DevExpress.Win.Dashboard

Declaration

public event CustomPropertyChangedEventHandler DashboardCustomPropertyChanged

Event Data

The DashboardCustomPropertyChanged event's data class is CustomPropertyChangedEventArgs. The following properties provide information specific to this event:

Property Description
Name Gets a custom property name for which the event is raised.
NewValue Gets a new value that has been assigned to the custom property.
OldValue Gets the custom property’s previous value, which has been replaced by the new value.
Owner Gets a level at which a custom property is recorded.

Remarks

In comparison to the Dashboard.OptionsChanged and DashboardDesigner.DashboardOptionsChanged events, the DashboardCustomPropertyChanged event occurs when the custom property value is changed. The change does not have to be recorded in the history.

The following example shows how to change the ribbon button checked status when you enable or disable the custom property:

public class ChartScaleBreakModule {
  // ...
  public static readonly string PropertyName = "ScaleBreak";

  void Designer_DashboardCustomPropertyChanged(object sender, CustomPropertyChangedEventArgs e) {
      if(e.Name == PropertyName)
          UpdateBarItem();
  }

  void UpdateBarItem() {
      barItem.Checked = designer.SelectedDashboardItem.CustomProperties.GetValue<bool>(PropertyName);
  }
  public static T GetValue<T>(this CustomProperties property, string name) where T : struct {
      var value = property.GetValue(name);
      if(value == null) return default(T);
      return (T)Convert.ChangeType(value, typeof(T));
  }
}

The following code snippets (auto-collected from DevExpress Examples) contain references to the DashboardCustomPropertyChanged event.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

See Also