Xamarin NetStandard Android sfChart DateTimeStripLine没有显示?

时间:2017-09-07 17:19:09

标签: xamarin.android xamarin.forms syncfusion .net-standard

这是相当具体的(如标题所示)。

我最近将我的Xamarin Forms应用程序移植到NETStandard,现在我的sfChart DateTimeStripLine在Android上不可见。

事情在UWP上显得或多或少,所以我不认为我已经引入了回归。

其他有类似经历的人吗?有没有人在NET Standard上成功使用ChartStripLine?

2 个答案:

答案 0 :(得分:1)

我们已经使用.Net Standard 1.3在SfChart中使用DateTimeStripline准备了一个样本,并且在sample中工作正常。如果您仍然遇到问题,请提供与Stripline相关的代码段,这将有助于提供更好的解决方案。

答案 1 :(得分:0)

所以,最后想出了问题:

在XAML中声明的StripLines工作正常,但绑定到StripLineCollection没有(仅限android)。不幸的是,在XAML中声明并不是一个特别有用的选项。

要修复/解决方法,请在XAML中声明StripLine,如下所示:

<chart:DateTimeAxis x:Name="TheTimeAxis" ...>
  <chart:DateTimeAxis.StripLines>
    <!-- Empty def requires at least one item to be used
         This creates container to fill in ViewModel.
         Fixes dissappearing StripLines bug on android -->
    <chart:DateTimeStripLine WidthType="Day" Width ="1"  
                                         Start="09/28/2017">

    </chart:DateTimeStripLine >
  </chart:DateTimeAxis.StripLines>

然后,在访问命名轴后面的代码中,拉出带状线并修改你的内容。

// Workaround Android: Our StripLines do not appear to be
// refreshing when bound from XAML.  To fix we create in XAML,
// then retrieve the existing collection and pass that to the
// viewmodel for modification
DateTimeAxis sl = this.TheTimeAxis;
var slc = sl.StripLines;