1

基本上我想在后面的 C# 中应用这个 XAML 代码。这是 XAML

        <telerik:LineSeries Stroke="Transparent">
            <telerik:LineSeries.PointTemplate>
                <DataTemplate>
                    <Ellipse Height="10" Width="10" Fill="DarkGreen" />
                </DataTemplate>
            </telerik:LineSeries.PointTemplate>
        </telerik:LineSeries>

这是我尝试过的:

Ellipse e = new Ellipse();
LineSeries line = new LineSeries();
e.Height = 10; 
e.Width = 10; 
line.Stroke = new SolidColorBrush(Colors.Transparent);
line.PointTemplate = new DataTemplate(e);

但它不起作用我得到一个“DataTemplate.DataType 的值必须是 System.Type 类型。” 错误。有人知道如何正确翻译上面的 XAML 吗?

4

2 回答 2

3

这就是我所做的,我创建了一个资源:

<UserControl.Resources>
    <DataTemplate x:Key="PointTemplate">
        <Ellipse Width="5" Height="5" Fill="Coral"/>
    </DataTemplate>
</UserControl.Resources>

然后你会通过这样做来应用它:

line.PointTemplate = this.Resources["PointTemplate"] as DataTemplate;
于 2013-03-07T21:26:26.587 回答
0

在 XAML 中创建一个静态资源并将其分配给 PointTemplate 属性

<Window.Resources>
<DataTemplate x:Key="PointTemplate">
<Ellipse Width="5" Height="5" Fill="Coral"/>
</DataTemplate>
</Window.Resources>

<telerik:ChartSeriesDescriptor.Style>
<Style TargetType="telerik:ScatterSplineSeries">
<Setter Property="YValueBinding" Value="YValue" />
<Setter Property="XValueBinding" Value="XValue" />
<Setter Property="StrokeThickness" Value="2" />
<Setter Property="PointTemplate" Value="{StaticResource PointTemplate}"  />
</Style>
</telerik:ChartSeriesDescriptor.Style>`
于 2018-04-24T14:50:52.433 回答