如何将图像可见性绑定到用户属性

时间:2016-06-20 06:20:32

标签: image binding xamarin.forms visibility xamarin-studio

我正在使用Xamarin Studio处理Xamarin Forms。 我遇到了绑定图像可见性的问题,如下所示。请给我一些改变。提前谢谢。

var radiobtn_preference = new CircleImage {
            BorderColor = ColorResources.commonButtonBackgroundColor,
            HeightRequest = 25,
            WidthRequest = 25,
            Aspect = Aspect.AspectFill,
            HorizontalOptions = LayoutOptions.Center,
            VerticalOptions = LayoutOptions.Center,
            Source="radio_uncheck.png",
        };

radiobtn_preference.SetBinding(radiobtn_preference.IsVisible," isExcluded");

公共类表     {         public string Name {get;组; }         public string id {get;组;}         public bool isExcluded {get;组;}     }

public static class tableData
{

    public static List<table> GetData ()
    {

        return new List<table> {
            new table () {
                Name="Peru",isExcluded=true,
            },
            new table () {
                Name="Apple",isExcluded=false,
            },
            new table () {
                Name="Grapes",isExcluded=true,
            },
        };
    }

}

我声明图像并尝试将其可见性绑定到用户设置的属性。

1 个答案:

答案 0 :(得分:0)

从评论中推断出您的代码中存在错误:

radiobtn_preference.SetBinding (radiobtn_preference.IsVisible, "isExcluded");

应该是

radiobtn_preference.SetBinding (CircleImage.IsVisibleProperty, "isExcluded");

注意第一个参数是如何变化的。此参数应该是要绑定的属性的标识符,而不是实际的实例化属性。 如果要绑定Grid注意,您必须使用Grid.IsVisibleProperty。或者,如果您想绑定另一个属性,例如IsEnabled属性,则必须使用CircleImage.IsEnabledProperty标识符。