3

我正在使用圆形图像

xmlns:ic="clr-namespace:ImageCircle.Forms.Plugin.Abstractions;assembly=ImageCircle.Forms.Plugin.Abstractions"

在我的 xaml 文件中。

我想做的是插入

<ic:CircleImage 
    x:Name="userProfileImage"
    HeightRequest="50"
    WidthRequest="50"
    Aspect="AspectFill"
    Source="{Binding post.uploader.userProfile.userThumbnail}"
/>

按钮属性下的此图像。

但如果我这样做(下)

<Button Clicked="OnUserInfoClicked">
    <Button.Image>
        <ic:CircleImage 
            x:Name="userProfileImage"
            HeightRequest="50"
            WidthRequest="50"
            Aspect="AspectFill"
            Source="{Binding post.uploader.userProfile.userThumbnail}"
        />
    </Button.Image>
</Button>

然后,我得到这个错误。

No property, bindable property, or event found for 'image'

我究竟做错了什么?以及如何解决?

4

2 回答 2

2

你试图做的事情是不可能的。但是,如果您只想点击图像并执行操作,为什么不直接使用 TapGesture?

<ic:CircleImage 
    VerticalOptions="Center"
    x:Name="userProfileImage"
    HeightRequest="50"
    WidthRequest="50"
    Aspect="AspectFill"
    Source="{Binding post.uploader.userProfile.userThumbnail}">

    <Image.GestureRecognizers>
        <TapGestureRecognizer Tapped="OnUserInfoClicked" />
    </Image.GestureRecognizers>
</ic:CircleImage>

希望这可以帮助!

于 2017-03-10T21:35:47.047 回答
0

对于那些将来遇到此问题的人 - 如果您不需要使用该对象,Xamarin 的默认按钮通过使图像高度的一半CircleImage具有圆形支持。CornerRadius

<ImageButton
    x:Name="userProfileImage"
    HeightRequest="50"
    WidthRequest="50"
    Aspect="AspectFill"
    CornerRadius="25"
    BackgroundColor="White"
    Source="{Binding post.uploader.userProfile.userThumbnail}"
/>

如果需要,您还可以添加一个BorderColorandBorderRadius使其弹出更多:

删除按钮,黑色边框,灰色背景。

于 2022-02-23T16:34:17.590 回答