绑定问题WPF

时间:2013-02-19 23:21:46

标签: wpf telerik telerik-charting

我是WPF的新手,当然我遇到了Bindings的一些问题。

我初始化了RadCartesianChart,我希望显示来自不同类别列表的数据。对于每个列表,我想要不同的颜色,但我没有将Fill属性绑定到我后面的代码中的Color属性。

这就是我的XAML的样子:

    <telerik:RadCartesianChart Name="RevChart">
        <telerik:RadCartesianChart.Grid>
            <telerik:CartesianChartGrid MajorYLineDashArray="5, 5" MajorLinesVisibility="Y">
                <telerik:CartesianChartGrid.MajorYLineStyle>
                    <Style TargetType="{x:Type Line}">
                        <Setter Property="Stroke" Value="Gray"/>
                    </Style>
                </telerik:CartesianChartGrid.MajorYLineStyle>
            </telerik:CartesianChartGrid>
        </telerik:RadCartesianChart.Grid>
        <telerik:RadCartesianChart.HorizontalAxis>
            <telerik:CategoricalAxis />
        </telerik:RadCartesianChart.HorizontalAxis>
        <telerik:RadCartesianChart.VerticalAxis>
            <telerik:LinearAxis/>
        </telerik:RadCartesianChart.VerticalAxis>

        <telerik:AreaSeries CategoryBinding="Date" ValueBinding="Rev" Fill="{Binding Color}">

        </telerik:AreaSeries>

    </telerik:RadCartesianChart>

这是我的C#代码:

public class Revenue
{
    public double Rev { get; set; }
    public DateTime Date { get; set; }
    public Color Color { get; set; }
}

List<Revenue> list = new List<Revenue>();
...
...
this.RevChart.Series[0].ItemsSource = list;

结果我得到了正确的图片,但颜色是默认的。所以我对Color的绑定不起作用。这行Fill={Binding Color}有问题吗?为什么呢?

1 个答案:

答案 0 :(得分:0)

因为FillBrush并且您正在尝试分配Color,因此无效。

您必须将Color分配到Color媒体资源中SolidColorBrush的{​​{1}}媒体资源。

实施例

Fill