首页 > 解决方案 > Syncfusion SfRating ValueChanged 事件到 Xamarin 表单中的命令

问题描述

我的 xamarin 表单视图上有一个 Syncfusion SfRating 控件。我想在 Prism ViewModel中处理ValueChanged 事件。

XAML:

xmlns:rating="clr-namespace:Syncfusion.SfRating.XForms;assembly=Syncfusion.SfRating.XForms"
xmlns:b="clr-namespace:Prism.Behaviors;assembly=Prism.Forms"

    <rating:SfRating ItemSize="40" ItemSpacing="15" HorizontalOptions="CenterAndExpand">
        <rating:SfRating.RatingSettings>
            <rating:SfRatingSettings RatedFill="Yellow"/>
        </rating:SfRating.RatingSettings>

        <rating:SfRating.Behaviors>
            <b:EventToCommandBehavior EventName="ValueChanged" EventArgsParameterPath="Value" Command="{Binding RatingValueChanged}" />
        </rating:SfRating.Behaviors>
    </rating:SfRating>

但是出现异常:System.ArgumentException:“Syncfusion.SfRating.XForms.ValueEventArgs”类型的表达式不能用于“Void Invoke(System.Object,System.EventArgs)”方法的“System.EventArgs”类型的参数参数名称: arg1

怎么了?如何将事件的 ValueChangedEventArgs e 参数发送到命令?

标签: xamarincommandprismbehaviorsyncfusion

解决方案


SfRating 报告的问题是由于不是从 EventArgs 继承的 ValueChangedEventArgs。我们已经修复了这个问题,带有修复的新版本将于 2018 年 8 月末推出。

注意:我正在为 Syncfusion 工作。

问候,保罗·安德森


推荐阅读