aspnet-devexpress-dot-xtracharts-dot-web-dot-webchartcontrol-224919ec.md
Occurs before a series is drawn when the chart’s contents are being drawn.
Namespace : DevExpress.XtraCharts.Web
Assembly : DevExpress.XtraCharts.v25.2.Web.dll
NuGet Package : DevExpress.Web.Visualization
public event CustomDrawSeriesEventHandler CustomDrawSeries
Public Event CustomDrawSeries As CustomDrawSeriesEventHandler
The CustomDrawSeries event's data class is CustomDrawSeriesEventArgs. The following properties provide information specific to this event:
| Property | Description |
|---|---|
| DisposeLegendCheckBoxImage | Gets or sets the value specifying whether CustomDrawSeriesEventArgs.LegendCheckBoxImage should be disposed when drawing is finished. |
| DisposeLegendFont | Gets or sets the value specifying whether the e.DXLegendFont should be disposed when drawing is finished. Inherited from CustomDrawSeriesEventArgsBase. |
| DisposeLegendMarkerImage | Gets or sets the value specifying whether e.DXLegendMarkerImage should be disposed when drawing is finished. Inherited from CustomDrawSeriesEventArgsBase. |
| DXLegendFont | Gets or sets the text font of the legend item of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| DXLegendMarkerImage | Gets or sets the image of the legend item marker of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendCheckBoxDXImage | Gets or sets the image of the legend item check box of the series or series point that is currently being painted. |
| LegendCheckBoxImage | Gets or sets the image of the legend item check box of the series or series point that is currently being painted. |
| LegendCheckBoxImageSizeMode | Gets or sets the image size mode of the legend item check box of the series or series point that is currently being painted. |
| LegendCheckBoxSize | Gets or sets the size of the legend item check box of the series or series point that is currently being painted. |
| LegendCheckBoxVisible | Gets or sets the visibility of the legend item check box of the series that is currently being painted. |
| LegendDrawOptions | Returns the draw settings of the legend item of the series that is currently being drawn. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendFont | Gets or sets the text font of the legend item of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendMarkerImage | Gets or sets the image of the legend item marker of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendMarkerImageSizeMode | Gets or sets the image size mode of the legend item marker of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendMarkerSize | Gets or sets the size of the legend item marker of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendMarkerVisible | Gets or sets the visibility of the legend item marker of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendText | Gets or sets the text of the legend item of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendTextColor | Gets or sets the text color of the legend item of the series or series point that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| LegendTextVisible | Gets or sets the text visibility of the legend item of the series whose points are currently being drawn. Inherited from CustomDrawSeriesEventArgsBase. |
| Series | Returns the series that is currently being painted. Inherited from CustomDrawSeriesEventArgsBase. |
| SeriesDrawOptions | Returns the draw settings of the series that is currently being drawn. Inherited from CustomDrawSeriesEventArgsBase. |
The CustomDrawSeries event is raised before every series is painted. The event parameter’s CustomDrawSeriesEventArgsBase.Series property provides the series which enables the series view and other specific series options to be determined. And the CustomDrawSeriesEventArgsBase.SeriesDrawOptions property provides the drawing options specific to each series. Note that the return value of this property should be typecast to the corresponding type (e.g., BarDrawOptions).
The CustomDrawSeries and WebChartControl.CustomDrawSeriesPoint events are always raised in the following order.
This example demonstrates how to use the CustomDrawSeries event to customize chart series’ appearance.
In the CustomDrawSeries event handler, use a CustomDrawSeriesEventArgs object properties to change series options:
using DevExpress.XtraCharts;
//...
chartControl.CustomDrawSeries += OnCustomDrawSeries;
//...
private void OnCustomDrawSeries(object sender, CustomDrawSeriesEventArgs e) {
// Find all Bar Series by their view type,
// and fill them with a given color.
if (e.Series.View is BarSeriesView)
e.SeriesDrawOptions.Color = Color.SkyBlue;
// Find the series by its name,
// and change its line style to dash-dot-dot.
// (Here it's assumed that the series view type is LineSeriesView).
if (e.Series.Name == "Line Series")
((LineDrawOptions)e.SeriesDrawOptions).LineStyle.DashStyle =
DashStyle.DashDotDot;
// Find all Point Series by the type of its DrawOptions,
// and change their marker kind to diamond.
if (e.SeriesDrawOptions.GetType() == typeof(PointDrawOptions))
((PointDrawOptions)e.SeriesDrawOptions).Marker.Kind =
MarkerKind.Diamond;
}
Imports DevExpress.XtraCharts
'...
chartControl.CustomDrawSeries += OnCustomDrawSeries
'...
Private Sub OnCustomDrawSeries(ByVal sender As Object, ByVal e As CustomDrawSeriesEventArgs)
' Find all Bar Series by their view type,
' and fill them with a given color.
If TypeOf e.Series.View Is BarSeriesView Then e.SeriesDrawOptions.Color = Color.SkyBlue
' Find the series by its name,
' and change its line style to dash-dot-dot.
' (Here it's assumed that the series view type is LineSeriesView).
If e.Series.Name Is "Line Series" Then CType(e.SeriesDrawOptions, LineDrawOptions).LineStyle.DashStyle = DashStyle.DashDotDot
' Find all Point Series by the type of its DrawOptions,
' and change their marker kind to diamond.
If e.SeriesDrawOptions.[GetType] Is GetType(PointDrawOptions) Then CType(e.SeriesDrawOptions, PointDrawOptions).Marker.Kind = MarkerKind.Diamond
End Sub
See Also