Xamarin 找不到'ToolbarItems'的属性、可绑定属性或事件



我要做的就是将工具栏添加到内容页面。

StackLayout

下添加此代码后
<ContentPage.ToolbarItems>
   <ToolbarItem Icon="plus.png"/>
</ContentPage.ToolbarItems>

有关其他信息。如果我将上代码与顶部StackLayout放在同一位置,则工具栏将不会出现。

我遇到了一个错误,在其他地方找不到同样的错误。

这是我的XAML文件内容。

    <?xml version="1.0" encoding="UTF-8"?>
<ContentPage 
    xmlns:ic="clr-namespace:ImageCircle.Forms.Plugin.Abstractions;assembly=ImageCircle.Forms.Plugin.Abstractions"
    xmlns="http://xamarin.com/schemas/2014/forms" 
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
    x:Class="EodiRoad.SocialPage">

    <StackLayout>
        <ContentPage.ToolbarItems>
            <ToolbarItem Icon="plus.png"/>
        </ContentPage.ToolbarItems>
        <ListView x:Name="socialPostsListView" HasUnevenRows="true" IsPullToRefreshEnabled="true">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <ViewCell>
                        <StackLayout Orientation="Vertical" Padding="5">
                            <StackLayout Orientation="Horizontal" Padding="5">
                                <ic:CircleImage 
                                    x:Name="userProfileImage"
                                    HeightRequest="50"
                                    WidthRequest="50"
                                    Aspect="AspectFill"
                                    Source="{Binding post.uploader.userProfile.userThumbnail}"
                                />
                                <Label Text="{Binding post.uploader.username}"/>
                            </StackLayout>
                            <Image
                                x:Name="postImage"
                                Source="{Binding post.image}"
                                Aspect="AspectFill"
                            />
                            <StackLayout Orientation="Horizontal">
                                <Button Text="like"/>
                                <Button Text="share"/>
                            </StackLayout>
                            <StackLayout Orientation="Vertical" HorizontalOptions="StartAndExpand">
                                <Label Text="{Binding post.content}"/>
                                <Label Text="{Binding post.uploadedTime}" TextColor="Gray"/>
                            </StackLayout>
                        </StackLayout>
                    </ViewCell>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>
    </StackLayout>

</ContentPage>

这是错误。

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

和完整错误。

/Users/UZU/Google Drive/Apps/EodiRoad/EodiRoadXamarin/EodiRoad/EodiRoad/EodiRoad.Views.SocialPage.xaml(5,5): Error: Position 13:5. No property, bindable property, or event found for 'ToolbarItems' (EodiRoad)

我在这里做错了什么?那是什么错误,以及如何解决?我相信你们。

此片段

<ContentPage.ToolbarItems>
  <ToolbarItem Icon="plus.png"/>
</ContentPage.ToolbarItems>

可以取决于上下文的意思:

  1. 让我们设置此contentPage的ToolbAriTems属性(或ToolbariTemSproperty bindable Property)(如果父节点是contentpage或
  2. 让我们将附带的可绑定式contentpage.toolbaritemsproperty设置为当前的BindableObject。

当您在StackLayout中使用它时,这被解释为第二个,但是这种属性不存在!因此失败了。

直接在ContentPage中的位置,它将像魅力一样工作

<ContentPage ...>
  <ContentPage.ToolbarItems>
    <ToolbarItem Icon="plus.png"/>
  </ContentPage.ToolbarItems>
  <StackLayout .../>
</ContentPage>

关于未出现的工具栏,具体取决于您正在运行的平台,它可能需要将ContentPage包装在导航页面中。

您需要在StackLayout外添加ToolbarItems尝试以下操作:

<ContentPage 
    xmlns:ic="clr-namespace:ImageCircle.Forms.Plugin.Abstractions;assembly=ImageCircle.Forms.Plugin.Abstractions"
    xmlns="http://xamarin.com/schemas/2014/forms" 
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
    x:Class="EodiRoad.SocialPage">
    <ContentPage.ToolbarItems>
        <ToolbarItem Icon="plus.png"/>
    </ContentPage.ToolbarItems>
    <StackLayout>
        <!-- Your Content -->
    </StackLayout>
</ContentPage>

最新更新