如何将图表绑定到 Xamarin.Forms 中的 XamDataChart 中的列表 <T>?
How to bind a chart to a List<T> in XamDataChart in Xamarin.Forms?
我有一个列表如下
public List<MonthlyData> MonthlyList;
public class MonthlyData
{
public int Count;
public string Month;
}
列表 MonthlyList 填充了包含每个月计数的 12 个项目。
我试图在 XamDataChart 中显示列表,但它只显示空白页。
XAML代码:
<ig:XamDataChart x:Name="Chart" >
<ig:XamDataChart.Axes>
<ig:CategoryXAxis x:Name="XAxis" ItemsSource="{Binding MonthlyList}" Label="{}{Month}" />
<ig:NumericYAxis x:Name="YAxis" />
</ig:XamDataChart.Axes>
<ig:XamDataChart.Series>
<ig:StackedColumnSeries x:Name="series" ItemsSource="{Binding MonthlyList}" Title="Data" XAxis="{x:Reference XAxis}" YAxis="{x:Reference YAxis}">
<ig:StackedColumnSeries.Series>
<ig:StackedFragmentSeries ValueMemberPath="Count" />
</ig:StackedColumnSeries.Series>
</ig:StackedColumnSeries>
</ig:XamDataChart.Series>
</ig:XamDataChart>
来自文档:
Data bindings allow properties of two objects to be linked so that a
change in one causes a change in the other.
因此您只能绑定到 public 属性而不是变量。
解决方案:
public List<MonthlyData> MonthlyList { get; set; }
我有一个列表如下
public List<MonthlyData> MonthlyList;
public class MonthlyData
{
public int Count;
public string Month;
}
列表 MonthlyList 填充了包含每个月计数的 12 个项目。
我试图在 XamDataChart 中显示列表,但它只显示空白页。
XAML代码:
<ig:XamDataChart x:Name="Chart" >
<ig:XamDataChart.Axes>
<ig:CategoryXAxis x:Name="XAxis" ItemsSource="{Binding MonthlyList}" Label="{}{Month}" />
<ig:NumericYAxis x:Name="YAxis" />
</ig:XamDataChart.Axes>
<ig:XamDataChart.Series>
<ig:StackedColumnSeries x:Name="series" ItemsSource="{Binding MonthlyList}" Title="Data" XAxis="{x:Reference XAxis}" YAxis="{x:Reference YAxis}">
<ig:StackedColumnSeries.Series>
<ig:StackedFragmentSeries ValueMemberPath="Count" />
</ig:StackedColumnSeries.Series>
</ig:StackedColumnSeries>
</ig:XamDataChart.Series>
</ig:XamDataChart>
来自文档:
Data bindings allow properties of two objects to be linked so that a change in one causes a change in the other.
因此您只能绑定到 public 属性而不是变量。
解决方案:
public List<MonthlyData> MonthlyList { get; set; }