如何解决可绑定属性未在 xamarin 表单中的自定义控件中获取最新值
我基本上是在尝试构建一个评级控件,并且我定义了一个名为“Currentrating”的属性,并且在组件初始化期间在内部我尝试根据 Currentrating 的值进行必要的更改,但由于某种原因,初始化后,我最终在我创建的页面中获得了默认值而不是为此控件设置的值,任何输入都会非常有帮助
这是我定义的属性,它是一个枚举,但我认为它不会改变任何东西,因为没有调用 setter 本身
public static readonly BindableProperty CurrentratingProperty = BindableProperty.Create(nameof(Currentrating),returnType: typeof(ratingValue),declaringType: typeof(ratingValue),defaultValue: ratingValue.One);
public ratingValue Currentrating
{
get
{
return (ratingValue)GetValue(CurrentratingProperty);
}
set
{
if (value <= ratingValue.None || ratingValue.Five < value)
{
throw new ArgumentOutOfRangeException("rating Values should be between 0 and 5");
}
else
{
SetValue(CurrentratingProperty,value);
SetCurrentrating((int)value);
}
}
}
这就是我使用它的方式
<controls:ratingView ratingImageHeightRequest="30" IsAnimationEnabled="True" ratingImageWidthRequest="30" BackgroundColor="Transparent" Currentrating="Three" ratingChangedCommand="{Binding ratingChangedComm}" ratingChangedEvent="ratingView_ratingChangedEvent" FadeAnimationDuration="250" HorizontalOptions="Center" VerticalOptions="Start" ratingViewImageAspect="AspectFit" SelectedImageSource="ratingselected" UnSelectedImageSource="ratingunselected" />
提前致谢
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。