如何在Xamarin.Forms中创建绑定属性

本文关键字:创建 绑定 属性 Forms Xamarin | 更新日期: 2023-09-27 18:13:20

我有一个绘图对象skaiview。我在xaml文件中创建了许多SkiaView,所以我正在寻找一种方法来传递自定义属性到我的SkiaView。

我试过了:

(作者:https://codemilltech.com/back-to-school-adding-a-custom-bindable-property-to-xamarin-forms/)


      public static readonly BindableProperty TestVarProperty =
        BindableProperty.Create<SkiaView, string>(rv => rv.TestVar,"None", 
            BindingMode.TwoWay, (bindable,value)=> { return true; },
            (bindable, oldValue, newValue) => {
                var thisView = (SkiaView)bindable;},
    (bindable, oldValue, newValue) => {},
    (bindable, value) => {
        return value;
    }, (bindable) => {
        return ">Error<";
    });
    public string TestVar
    {
        get { return (string)GetValue(TestVarProperty); }
        set { SetValue(TestVarProperty, value); }
    }

但是这返回字符串"none",我想在xaml中获取和使用我的TestVar集。所以如果有人有什么想法可以传递属性给一个没有可绑定属性的对象,我可以试试

如何在Xamarin.Forms中创建绑定属性

谢谢你的回复,我已经更改了下面的代码,像这样

public static readonly BindableProperty TestVarProperty =
   BindableProperty.Create<SkiaView, string>(rv => rv.TestVar, null,
       BindingMode.OneWayToSource);
    public string TestVar
    {
        get { return (string)GetValue(TestVarProperty); }
        set { SetValue(TestVarProperty, value); }
    }