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

Xamarin:点击按钮修改Label颜色,用户名密码错误时如何显示提示?

Xamarin 登录验证与Label控件交互实现

1. 点击按钮修改Label颜色

首先确保XAML中存在触发点击事件的按钮(若未添加,可参考以下代码):

<Button Text="登录" Clicked="OnLoginClicked" />
<!-- 你的错误提示Label -->
<Label Text="pass or username is incorrect" TextColor="Red" x:Name="FailureResult" IsVisible="false"/>

在后台代码的按钮点击事件处理方法中,直接修改Label的TextColor属性即可:

private void OnLoginClicked(object sender, EventArgs e)
{
    // 按需修改颜色,示例改为橙色
    FailureResult.TextColor = Color.Orange;
}

2. 验证失败时显示错误提示Label

在登录验证逻辑的else分支中,将Label的IsVisible属性设置为true,即可显示错误提示:

if ((await UserManaging.ReadAllAsync()).FirstOrDefault(x => x.Name == name && x.Password == pass) != null)
{
    await Navigation.PushAsync(new HomePage());
}
else
{
    // 显示错误提示Label
    FailureResult.IsVisible = true;
}

优化建议(可选)

为提升用户体验,建议每次点击登录按钮时先重置Label状态,避免残留上一次的提示:

private async void OnLoginClicked(object sender, EventArgs e)
{
    // 重置Label状态:隐藏提示+恢复默认颜色(可按需调整)
    FailureResult.IsVisible = false;
    FailureResult.TextColor = Color.Red;

    // 获取输入的用户名和密码(需对应你的输入框控件)
    string name = UsernameEntry.Text;
    string pass = PasswordEntry.Text;

    if ((await UserManaging.ReadAllAsync()).FirstOrDefault(x => x.Name == name && x.Password == pass) != null)
    {
        await Navigation.PushAsync(new HomePage());
    }
    else
    {
        FailureResult.IsVisible = true;
        // 可选:验证失败时再修改颜色
        // FailureResult.TextColor = Color.DarkRed;
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 20:22:43