Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Can';t按代码清除Silverlight图表工具包轴_C#_Silverlight_Charts_Silverlight Toolkit - Fatal编程技术网

C# Can';t按代码清除Silverlight图表工具包轴

C# Can';t按代码清除Silverlight图表工具包轴,c#,silverlight,charts,silverlight-toolkit,C#,Silverlight,Charts,Silverlight Toolkit,我正在尝试使用Silverlight图表(windows phone 7),用户可以通过更改某些设置来修改该图表 清除图表轴并读取新轴后,chart.ActualAxes.Count将报告双轴 有人知道如何完全清除和删除silverlight图表上的所有轴并添加新轴吗?我是不是打算在添加后调用一些东西来更新ActualAxes列表 提前谢谢 代码示例(调用两次,图表将以4个轴而不是两个轴结束): 图表Axes集合表示即使图表中没有序列,也将呈现的图表中的持久化X。ActualAxes表示持久轴和

我正在尝试使用Silverlight图表(windows phone 7),用户可以通过更改某些设置来修改该图表

清除图表轴并读取新轴后,chart.ActualAxes.Count将报告双轴

有人知道如何完全清除和删除silverlight图表上的所有轴并添加新轴吗?我是不是打算在添加后调用一些东西来更新ActualAxes列表

提前谢谢

代码示例(调用两次,图表将以4个轴而不是两个轴结束):


图表
Axes
集合表示即使图表中没有序列,也将呈现的图表中的持久化X。
ActualAxes
表示持久轴和图表中系列使用的轴的组合

当您清除集合并测试
ActualAxes.Count
时,您会发现它仍然显示为2,即使
Axes
现在为0。
ActualAxes
SeriesHostAxesCollection
的一个实例)将不允许删除现有系列中正在使用的轴。因此,
ActualAxes
集合保留了原件。然后,将另外两个轴添加到持久的
集合中,这样这两个新轴也将添加到
实际轴
,最后得到4个


再次运行代码(第三次),您应该会看到
ActualAxes
计数仍然为4。这是因为您在第二次调用中添加的2轴未被任何系列使用,因此它们可以从
ActualAxes
集合中删除。

以下代码应该可以工作

var xAxis = chart_name.ActualAxes.OfType<LinearAxis>().FirstOrDefault(ax => ax.Orientation == AxisOrientation.X);
if (xAxis != null) 
{
   xAxis.Title = "The Title";
}
var xAxis=chart\u name.ActualAxes.OfType().FirstOrDefault(ax=>ax.Orientation==AxisOrientation.X);
if(xAxis!=null)
{
xAxis.Title=“标题”;
}

这很好,但如何将其与图表断开,以便用不同类型的轴替换?(我假设它是在运行时自动分配的)@Doug:我的问题是你为什么要更换轴?为什么不修改现有轴的属性呢?因为我想通过在CategoryAxis和DateTimeAxis之间切换来更改它们的类型
var xAxis = chart_name.ActualAxes.OfType<LinearAxis>().FirstOrDefault(ax => ax.Orientation == AxisOrientation.X);
if (xAxis != null) 
{
   xAxis.Title = "The Title";
}