You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现Entry与CheckBox的反向值绑定以控制密码显示?

实现Entry密码框与“显示密码”复选框的反向绑定效果

你当前的代码逻辑是把Entry的IsPassword直接绑定到CheckBox的IsChecked,导致效果和需求完全相反:CheckBox未勾选时IsChecked为false,IsPassword也为false(显示明文);勾选后IsChecked为true,IsPassword也为true(显示密码点)。要实现反向效果,有两种简单方案:

方法一:使用绑定表达式逻辑非(.NET MAUI 7+ 适用)

直接在绑定中对IsChecked取反,无需额外代码:

<Entry Placeholder="Enter Password"
       Grid.Row="3"
       TextColor="White"
       x:Name="vwPasswrd"
       IsPassword="{Binding !IsChecked, Source={x:Reference chkVwPasswdShow}}"
       Margin="20,0,0,0"/>

<HorizontalStackLayout
    Grid.Row="3"
    Grid.Column="1"
    HorizontalOptions="Center">
    <CheckBox x:Name="chkVwPasswdShow"
              VerticalOptions="Center"/>
    <Label Text="Show Password"
           FontSize="Micro"
           VerticalOptions="Center"
           TextColor="White"/>
</HorizontalStackLayout>

这里通过!IsChecked反转布尔值,实现:

  • 复选框未勾选时,!IsChecked为true,IsPassword生效(显示密码点)
  • 复选框勾选时,!IsChecked为false,IsPassword失效(显示明文)

方法二:使用布尔反转转换器(兼容所有版本)

如果项目版本不支持绑定表达式逻辑非,可创建通用反转转换器:

  1. 编写转换器类:
public class InverseBooleanConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        return value is bool boolValue ? !boolValue : value;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        return value is bool boolValue ? !boolValue : value;
    }
}
  1. 在页面资源字典中注册转换器(替换YourAppNamespace为你的项目命名空间):
<ContentPage.Resources>
    <local:InverseBooleanConverter x:Key="InverseBooleanConverter"/>
</ContentPage.Resources>

页面根元素需添加命名空间声明:

xmlns:local="clr-namespace:YourAppNamespace"
  1. 修改Entry的绑定:
<Entry Placeholder="Enter Password"
       Grid.Row="3"
       TextColor="White"
       x:Name="vwPasswrd"
       IsPassword="{Binding IsChecked, Source={x:Reference chkVwPasswdShow}, Converter={StaticResource InverseBooleanConverter}}"
       Margin="20,0,0,0"/>

内容的提问来源于stack exchange,提问作者user22995906

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 05:44:58