Category / Section
How to change the legend position in Silverlight OLAP Chart?
Changing the legend position in OLAP Chart can be achieved through the following code example.
C#
public partial class MainPage : UserControl
{
private IOlapDataProvider dataProvider;
public object OlapDataManager;
public MainPage()
{
InitializeComponent();
InitializeConnection();
this.olapChart.Loaded += olapChart_Loaded;
}
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 olapChart_Loaded(object sender, System.Windows.RoutedEventArgs e)
{
this.olapChart.OlapArea.Legends.DockPosition =
Syncfusion.Windows.Chart.ChartDock.Bottom;
}
}
VB
Partial Public Class MainPage
Inherits UserControl
Private dataProvider As IOlapDataProvider
Public OlapDataManager As Object
Public Sub New()
InitializeComponent()
InitializeConnection()
AddHandler Me.olapChart.Loaded, AddressOf olapChart_Loaded
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 olapChart_Loaded(ByVal sender As Object, ByVal e As System.Windows.RoutedEventArgs)
Me.olapChart.OlapArea.Legends.DockPosition =
Syncfusion.Windows.Chart.ChartDock.Bottom
End Sub
End Class