Articles in this section
Category / Section

How to change the series color in OLAP Chart?

1 min read

You can change the series color of OLAP Chart series as follows.

C#

public partial class MainPage : UserControl
    {
        private IOlapDataProvider dataProvider;
        public object OlapDataManager;
        public MainPage()
        {
            InitializeComponent();
            InitializeConnection();
            this.olapChart1.OnDataRefreshCompleted += new OlapChart.DataRefreshCompleted(olapChart1_OnDataRefreshCompleted);
        }
        private void InitializeConnection()
        {
            Binding customBinding = new CustomBinding(new BinaryMessageEncodingBindingElement(), new HttpTransportBindingElement { MaxReceivedMessageSize = 2147483647 });
            EndpointAddress address = new EndpointAddress("http://bi.syncfusion.com/OlapWcfProject/Services/OlapManager.svc/binary");
            ChannelFactory<IOlapDataProvider> clientChannel = new ChannelFactory<IOlapDataProvider>(customBinding, address);
            dataProvider = clientChannel.CreateChannel();
            OlapDataManager olapDataManager = new OlapDataManager();
            olapDataManager.DataProvider = dataProvider;
            olapDataManager.SetCurrentReport(CreateOlapReport());
            this.OlapDataManager = olapDataManager;
        }
void olapChart1_OnDataRefreshCompleted(object sender, DataRefreshCompletedEventArgs e)
        {
            SolidColorBrush seriesBrush = new SolidColorBrush();
            seriesBrush.Color = Color.FromArgb(255, 0, 0, 255);
            olapChart1.Dispatcher.BeginInvoke(() =>
            {
                foreach (var series in olapChart1.OlapArea.Series)
                {
                    foreach (var seg in series.Segments)
                    {
                        seg.Interior = seriesBrush;
                    }
                }
            });
        }

VB

Partial Public Class MainPage
    Inherits UserControl
    Private dataProvider As IOlapDataProvider
    Public OlapDataManager As Object
    Public Sub New()
        InitializeComponent()
        InitializeConnection()
       Me.olapChart1.OnDataRefreshCompleted += New OlapChart.DataRefreshCompleted(olapChart1_OnDataRefreshCompleted)
    End Sub
    Private Sub InitializeConnection()
            Binding customBinding = New CustomBinding(New BinaryMessageEncodingBindingElement(), New HttpTransportBindingElement 
            {
        MaxReceivedMessageSize = 2147483647
            }
)
        Dim address As EndpointAddress = New EndpointAddress("http://bi.syncfusion.com/OlapWcfProject/Services/OlapManager.svc/binary")
            Dim clientChannel As ChannelFactory<IOlapDataProvider> =  New ChannelFactory<IOlapDataProvider>(customBinding,address) 
        dataProvider = clientChannel.CreateChannel()
        Dim olapDataManager As OlapDataManager = New OlapDataManager()
        olapDataManager.DataProvider = dataProvider
        olapDataManager.SetCurrentReport(CreateOlapReport())
        Me.OlapDataManager = olapDataManager
    End Sub
Private Sub olapChart1_OnDataRefreshCompleted(ByVal sender As Object, ByVal e As DataRefreshCompletedEventArgs)
        Dim seriesBrush As SolidColorBrush = New SolidColorBrush()
        seriesBrush.Color = Color.FromArgb(255, 0, 0, 255)
            olapChart1.Dispatcher.BeginInvoke(() =>
            {
        Dim series As var
        For Each series In olapChart1.OlapArea.Series
            Dim seg As var
            For Each seg In series.Segments
                seg.Interior = seriesBrush
            Next
        Next
            }
)
End Sub

 

Did you find this information helpful?
Yes
No
Help us improve this page
Please provide feedback or comments
Comments (0)
Please sign in to leave a comment
Access denied
Access denied