RadControls for Windows 8

RadControls for Windows 8RadControlsforWindows8http://www.telerik.com/help/wpf/radchartview-populating-with-data-static-data.htmlRadCartesianChartchart=newRadCartesianChart();      chart.HorizontalAxi

大家好,又见面了,我是你们的朋友全栈君。

RadControls for Windows 8

http://www.telerik.com/help/wpf/radchartview-populating-with-data-static-data.html

RadCartesianChart chart = new RadCartesianChart();

            chart.HorizontalAxis = new CategoricalAxis();

            chart.VerticalAxis = new LinearAxis() { Maximum = 100 };

            LineSeries line = new LineSeries();

            line.Stroke = new SolidColorBrush(Colors.Blue);

            line.StrokeThickness = 2;

            line.DataPoints.Add(new CategoricalDataPoint() { Value = 20 });

            line.DataPoints.Add(new CategoricalDataPoint() { Value = 40 });

            line.DataPoints.Add(new CategoricalDataPoint() { Value = 35 });

            line.DataPoints.Add(new CategoricalDataPoint() { Value = 40 });

            line.DataPoints.Add(new CategoricalDataPoint() { Value = 30 });

            line.DataPoints.Add(new CategoricalDataPoint() { Value = 50 });

            chart.Series.Add(line);

            LineSeries line2 = new LineSeries();

            line2.Stroke = new SolidColorBrush(Colors.Orange);

            line2.StrokeThickness = 2;

            line2.DataPoints.Add(new CategoricalDataPoint() { Value = 5 });

            line2.DataPoints.Add(new CategoricalDataPoint() { Value = 44 });

            line2.DataPoints.Add(new CategoricalDataPoint() { Value = 3 });

            line2.DataPoints.Add(new CategoricalDataPoint() { Value = 55 });

            line2.DataPoints.Add(new CategoricalDataPoint() { Value = 22 });

            line2.DataPoints.Add(new CategoricalDataPoint() { Value = 11 });

            chart.Series.Add(line2);

            this.LayoutRoot.Children.Add(chart);

提示信息:

http://www.telerik.com/help/silverlight/radchartview-features-tooltip.html

<telerik:RadCartesianChart x:Name=”radCartesianChart” Margin=”8″ Grid.Row=”2″ Grid.ColumnSpan=”2″>                               
    <telerik:RadCartesianChart.Behaviors>
    <telerik:ChartTooltipBehavior Placement=”Top” />
</telerik:RadCartesianChart.Behaviors>
<telerik:RadCartesianChart.TooltipTemplate>
                <DataTemplate>
                    <Grid>
                        <Path Data=”M-1236,-441 L-1180,-441 -1180,-424 -1228,-424 -1230.5,-420 -1233,-424 -1236,-424 z”
                                  Stretch=”Fill” Fill=”Beige”  StrokeThickness=”2″/>
<StackPanel Margin=”5,5,5,18″>
<StackPanel Orientation=”Horizontal”>
                                   <TextBlock Text=” 值:” FontWeight=”Bold” FontSize=”11″/>
                                   <TextBlock Text=”{Binding Path=DataItem.Value}” FontWeight=”Bold” FontSize=”11″/>
<TextBlock Text=” “/>
                       </StackPanel>

<StackPanel Orientation=”Horizontal”>
                                   <TextBlock Text=” 时间:” FontWeight=”Bold” FontSize=”11″/>
                                   <TextBlock Text=”{Binding Path=DataItem.Category}” FontWeight=”Bold” FontSize=”11″/>                                 
<TextBlock Text=” “/>
                       </StackPanel>
                        </StackPanel>
                    </Grid>
                </DataTemplate>
            </telerik:RadCartesianChart.TooltipTemplate>

//标签模板

<telerik:LineSeries ShowLabels=”True” PointTemplate=”{StaticResource PointTemplate1}”>
    <telerik:LineSeries.LabelDefinitions>
<telerik:ChartSeriesLabelDefinition>
         <telerik:ChartSeriesLabelDefinition.Template>
             <DataTemplate>
                <TextBlock Text=”MyTest”/>
             </DataTemplate>
         </telerik:ChartSeriesLabelDefinition.Template>
     </telerik:ChartSeriesLabelDefinition>
</telerik:LineSeries.LabelDefinitions>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”10″ Value=”10″/>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”20″ Value=”20″/>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”30″ Value=”30″/>
    </telerik:LineSeries>

代码:

                #region //标签模板,显示标签                
                line.LabelDefinitions.Add(new ChartSeriesLabelDefinition { Template = (DataTemplate)XamlReader.Load(CreateItemTemplate()) });
                #endregion

//点模板、标签模板、提示信息

<telerik:RadCartesianChart Margin=”10,10,8,0″ >    
<telerik:RadCartesianChart.Resources>
               <DataTemplate x:Key=”PointTemplate1″>
                   <Ellipse x:Name=”ellipse” Height=”6″ Width=”6″ Fill=”Black”/>
               </DataTemplate>
           </telerik:RadCartesianChart.Resources>
    <telerik:RadCartesianChart.Behaviors>
    <telerik:ChartTooltipBehavior Placement=”Top” VerticalOffset=”20″/>
</telerik:RadCartesianChart.Behaviors>
<telerik:RadCartesianChart.TooltipTemplate>
                <DataTemplate>
                    <Grid>
                        <Path Data=”M-1236,-441 L-1180,-441 -1180,-424 -1228,-424 -1230.5,-420 -1233,-424 -1236,-424 z”
                                  Stretch=”Fill” Fill=”Beige” Stroke=”Gray” StrokeThickness=”2″/>
<TextBlock Text=”Profit for ” FontWeight=”Bold” FontSize=”11″/>
<TextBlock Text=”{Binding Path=DataItem.Value}” FontWeight=”Bold” FontSize=”11″/>
                    </Grid>
                </DataTemplate>
            </telerik:RadCartesianChart.TooltipTemplate>
    <telerik:RadCartesianChart.HorizontalAxis>
    <telerik:CategoricalAxis/>
    </telerik:RadCartesianChart.HorizontalAxis>
    <telerik:RadCartesianChart.VerticalAxis>
    <telerik:LogarithmicAxis LabelOffset=”0″ LogarithmBase=”10″ LastLabelVisibility=”Visible” LineThickness=”1″ MajorTickOffset=”0″ TickThickness=”1″ ZIndex=”0″ ShowLabels=”False”/>
    </telerik:RadCartesianChart.VerticalAxis>
    <telerik:LineSeries ShowLabels=”True” PointTemplate=”{StaticResource PointTemplate1}”>
    <telerik:LineSeries.LabelDefinitions>
<telerik:ChartSeriesLabelDefinition>
         <telerik:ChartSeriesLabelDefinition.Template>
             <DataTemplate>
                <TextBlock Text=”MyTest”/>
             </DataTemplate>
         </telerik:ChartSeriesLabelDefinition.Template>
     </telerik:ChartSeriesLabelDefinition>
</telerik:LineSeries.LabelDefinitions>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”10″ Value=”10″/>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”20″ Value=”20″/>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”30″ Value=”30″/>
    </telerik:LineSeries>
<telerik:LineSeries ShowLabels=”True”>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”10″ Value=”50″/>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”1111″ Value=”30″/>
    <telerik:CategoricalDataPoint Category=”{x:Null}” IsSelected=”False” Label=”30″ Value=”30″/>
    </telerik:LineSeries>
    </telerik:RadCartesianChart>

//代码添加模板

                var pointTemplate = chartObject.Resources[“PointTemplate1”] as DataTemplate; //获取xaml中的模板对象

                #region //标签模板,显示标签                
                line.LabelDefinitions.Add(new ChartSeriesLabelDefinition { Template = (DataTemplate)XamlReader.Load(CreateItemTemplate(c.ToString())) });
                #endregion

 private string CreateItemTemplate(string strColor)
        {

            string strText = string.Format(“<TextBlock Text=\”{0}\” Foreground=\”{1}\” Margin=\”0,0,0,0\”/>”, “{Binding Label}”, strColor);
            StringBuilder template = new StringBuilder();
            template.Append(“<DataTemplate “);
            template.Append(“xmlns=’http://schemas.microsoft.com/winfx/”);
            template.Append(“2006/xaml/presentation’ “);
            template.Append(“xmlns:x=’http://schemas.microsoft.com/winfx/2006/xaml’>”);

            //template.Append(“<Grid>”);
            //template.Append(“<Path Data=\”M-1236,-441 L-1180,-441 -1180,-424 -1228,-424 -1230.5,-420 -1233,-424 -1236,-424 z\” Stretch=\”Fill\” Fill=\”Beige\” Stroke=\”Gray\” StrokeThickness=\”2\”/>”);
            //template.Append(“<TextBlock Text=\”{Binding Label}\” Foreground=\”{Binding m_listColors}\” Margin=\”0,0,0,0\”/>”);
            //template.Append(“</Grid>”);

            template.Append(strText);

            template.Append(“</DataTemplate>”);
            return template.ToString();
        }

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/162012.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号