Xamarin Forms DataTrigger导致NullReferenceException

时间:2016-04-14 17:26:50

标签: xamarin xamarin.android xamarin.forms datatrigger

我试图在Xamarin Forms页面的XAML中使用一个简单的DataTrigger元素:

<Frame BackgroundColor="Red" HorizontalOptions="Fill" VerticalOptions="FillAndExpand">
    <Frame.Triggers>
        <DataTrigger TargetType="Frame" Binding="{Binding IsValid}" Value="True">
            <Setter Property="BackgroundColor" Value="{x:Static Color.Lime}" />
        </DataTrigger>
    </Frame.Triggers>
</Frame>

此配置会使应用程序崩溃,实际上是NullReferenceException

  

Java.Lang.NullPointerExceptionAttempt调用虚方法&#39; boolean android.graphics.Bitmap.isMutable()&#39;在空对象引用上

如果我在上面的示例中注释掉Setter,应用程序会正常运行,但当然触发器不起作用。

任何人都可以建议我做错了吗?

1 个答案:

答案 0 :(得分:6)

发现它!

我查看了反编译版本。这是当帧的高度为0时发生的错误。

enter image description here

这会导致FrameOnPropertyChanged

中的错误

enter image description here

Padding="1"HeightRequest="1" WidthRequest="1"添加到您的框架中应该修复它,除非有某些东西强制它为0。