I am trying write a template to Legend control. I have version 10.3, .net 4, xamDataChart, with a few line series.
My Legend is Horizontal and I want this to wrap when i have many items(series). Something thing like tab control showing multiple lines. Is this possible? I have to have my Legend at the Top.
I have custom Legend template and Legendtemplateitem, but it's not working. I just comented the ScrowViewer and replace this for a WrapPanel.
Any Help is welcome.
<ControlTemplate x:Key="xamDataChartLegendTemplate" TargetType ="Charts:Legend">
<Grid>
<Border BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}" CornerRadius="4" Background="{TemplateBinding Background}">
<Grid Margin="{TemplateBinding Padding }">
<Grid.RowDefinitions>
<RowDefinition Height="auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<ContentPresenter Grid.Row="0" Content="{TemplateBinding Content}" />
<!--<ScrollViewer Grid.Row="1" HorizontalScrollBarVisibility="auto" VerticalScrollBarVisibility="auto" BorderThickness="0" Background="Transparent">-->
<WrapPanel Orientation="Horizontal" Grid.Row="1">
<ContentPresenter Grid.Row="1" x:Name="ContentPresenter" />
</WrapPanel>
<!--</ScrollViewer>-->
</Grid >
</Border>
<Border IsHitTestVisible="False" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="Transparent" CornerRadius="4" Background="{StaticResource GenericOverlay}" />
</Grid>
</ControlTemplate>
<
DataTemplate x:Key="xamDataChartCustomLegendItemTemplate">
.Visibility}">
.LegendItemBadgeTemplate}" />
}"/>
Hello,
Thank you for your post. I have been looking into it, but I wasn’t able to reproduce your behavior, so if this is still an issue for you, could you please send me an isolated sample project, where this is reproduced, so I can investigate it further for you.
Looking forward for your reply.
Hi Stefan,
I have attached a sample project showing that.
I want the legend to show all the series data.
Any help is welcome.
Regards,
Jorge Arteiro
Hello Varun,
This Product Idea hasn't been implemented yet, but we will try to revisit it for the first version that will be shipped next year (13.1).
Hi,
I am new Infragistics and I am trying to simply plot a 2 line series on the XamDataChart and show the legend for the two series through C# programming. Unfortunately the legend doesn't come up at all. Can I know what the reason might be. I am exactly using the same code as the given in the online documentation. Below is the code I am using. I would really appreciate if you could help me with this.
Thanks.
SimpleDataCollection data = new SimpleDataCollection(); XamDataChart DataChart = new XamDataChart(); Legend leg = new Legend { Content = "Legend", Margin = new Thickness(20), VerticalAlignment = VerticalAlignment.Top, HorizontalAlignment = HorizontalAlignment.Right }; DataChart.Margin = new Thickness(5); DataChart.DataContext = data;
// XAxis CategoryXAxis xmXAxis = new CategoryXAxis(); xmXAxis.Interval = 50; xmXAxis.ItemsSource = data; xmXAxis.Label = "{Label}";
// YAxis NumericYAxis xmYAxis = new NumericYAxis(); DataChart.Axes.Add(xmXAxis); DataChart.Axes.Add(xmYAxis);
// Series LineSeries series = new LineSeries(); series.ValueMemberPath = "Value"; series.XAxis = xmXAxis; series.YAxis = xmYAxis; series.ItemsSource = data; series.Title = "Navya"; series.Legend = leg;
LineSeries series1 = new LineSeries(); series1.ValueMemberPath = "Value"; series1.XAxis = xmXAxis; series1.YAxis = xmYAxis; series1.ItemsSource = data; series1.Title = "nnn"; series1.Legend = leg; DataChart.Legend = leg; DataChart.Legend.Visibility = Visibility.Visible; DataChart.Series.Add(series); this.LayoutRoot.Children.Add(DataChart);
I have been looking into your post and I can say that you have to add the Legend object to the Visual tree as well as the XamDataChart, so I can suggest you add the following code at the end of the one you have shared:
this.LayoutRoot.Children.Add(leg);
Hope this helps you.
is this product idea implemented ? i am running into the same problem , need to wrap items instead of one item per line in vertical orientation.
any response.
This feature is not yet implemented, but you can use a workaround. You can inherit the LegendBase class and create your own legend. I attached a sample project showing how to do so.
I need this also, I need to be able to change the item panel from the default stackpanel to something else. Any word on when this will be made available? This is a pretty normal feature.