微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将 true/false 替换为特定列表视图和特定列中的不同文本或复选标记 文档注意

如何解决将 true/false 替换为特定列表视图和特定列中的不同文本或复选标记 文档注意

我得到了 listview,如下所示。我正在寻找一种以某种方式而不是 true/false 显示其他 text 或放置 check marks方法。我怎样才能做到这一点?

重要说明:我有很多页面具有不同的列表视图,其中也会出现真/假。我希望能够选择定义该解决方案的列表视图,以及我可以选择特定列表视图和列的最佳选择(当然,如果可能的话)

asdasdasd

enter image description here

放置 True/False 值的特定部分 (BottleIsFilled):

<ListView.ItemTemplate>
    <DataTemplate>
        <ViewCell>
            <Grid>
                <Grid.ColumnDeFinitions>
                    <ColumnDeFinition Width="*" />
                    <ColumnDeFinition Width="*" />
                    <ColumnDeFinition Width="*" />
                               </Grid.ColumnDeFinitions>
                <Label
                    Grid.Column="0"
                              
                    HorizontalOptions="Fill"
                    HorizontalTextAlignment="Center"
                    Text="{Binding BottleTypeName}" />
                <Label
                    Grid.Column="1"
                              
                    HorizontalOptions="Fill"
                    HorizontalTextAlignment="Center"
                    Text="{Binding BottleIsFilled}" />
                <Label
                    Grid.Column="2"
                              
                    HorizontalOptions="Fill"
                    HorizontalTextAlignment="Center"
                    Text="{Binding Amount}" />
                           </Grid>
        </ViewCell>
    </DataTemplate>
</ListView.ItemTemplate>

解决方法

Jason 建议使用 XamarinCommunityToolkit package 中的 renv/settings.dcf

  1. 在您的所有项目(共享和平台)上安装 nuget 包。
  2. 为此包添加 xaml 命名空间 BoolToObjectConverter
  3. 实例化并使用 BoolToObjectConverter

似乎每个页面都有一个通用实例适合您的用例。

xmlns:xct="http://xamarin.com/schemas/2020/toolkit"

文档

https://docs.microsoft.com/en-us/xamarin/community-toolkit/converters/booltoobjectconverter

注意

如果您对命名空间有错误,请尝试输入 <ContentPage.Resources> <xct:BoolToObjectConverter x:Name="BoolToObjectConverter" TrueObject="yes" FalseObject="no"/> </ContentPage.Resources> ... <Label Grid.Column="1" HorizontalOptions="Fill" HorizontalTextAlignment="Center" Text="{Binding BottleIsFilled,Converter={StaticResource BoolToObjectConverter}}"/> 并将光标放在其上,当您单击“ctrl+”时,vs intelisense 应突出显示它并建议并为您应用正确的命名空间。或 ctrl+enter。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。