1
我有兩個問題:WPF動態添加控件和綁定的問題
爲什麼
Color
結合不起作用。你能否提供適當的設置綁定方式來動態管理顏色?我的SplineAreaSeries
是靜態的,並在XAML中初始化。如果我想再添加10個系列,那麼最好和更優雅的方法是什麼?
XAML:
<telerik:RadCartesianChart x:Name="xRevChart">
<telerik:RadCartesianChart.Grid>
<telerik:CartesianChartGrid MajorLinesVisibility="XY" MajorXLineDashArray="10.5"
MajorXLinesRenderMode="All"/>
</telerik:RadCartesianChart.Grid>
<telerik:RadCartesianChart.VerticalAxis>
<telerik:LinearAxis></telerik:LinearAxis>
</telerik:RadCartesianChart.VerticalAxis>
<telerik:RadCartesianChart.HorizontalAxis>
<telerik:CategoricalAxis></telerik:CategoricalAxis>
</telerik:RadCartesianChart.HorizontalAxis>
<telerik:SplineAreaSeries Name="xSplineArea1" CategoryBinding="XValue" ValueBinding="YValue">
<telerik:SplineAreaSeries.Fill>
<SolidColorBrush Color="{Binding Color}"/>
</telerik:SplineAreaSeries.Fill>
</telerik:SplineAreaSeries>
<telerik:SplineAreaSeries Name="xSplineArea2" CategoryBinding="XValue" ValueBinding="YValue">
<telerik:SplineAreaSeries.Fill>
<SolidColorBrush Color="{Binding Color}"/>
</telerik:SplineAreaSeries.Fill>
</telerik:SplineAreaSeries>
</telerik:RadCartesianChart>
CODE:
public class ChartDataClass
{
public double XValue { get; set; }
public double YValue { get; set; }
public Color Color { get; set; }
}
List<ChartDataClass> list1 = new List<ChartDataClass>();
for (int i = 0; i < 20; i++)
{
ChartDataClass c = new ChartDataClass();
c.XValue = i;
c.YValue = rand.NextDouble() * 100;
c.Color = Colors.Blue;
list1.Add(c);
}
xRevChart.Series[1].ItemsSource = list1;
我可以理解'<的SolidColorBrush顏色=「{結合YourColorProperty}」 />'的工作原理相同的轉換器,但在XAML中已經聲明,所以我覺得這不是轉換問題。糾正我,如果我錯了。謝謝! – 2013-02-21 01:43:43