gpt4 book ai didi

c# - 以编程方式启用 Windows Phone 7 应用程序中禁用的复选框

转载 作者:行者123 更新时间:2023-11-30 12:36:05 26 4
gpt4 key购买 nike

我正在编写我的第一个特定于设备的应用程序,它是一个 Windows Phone 7 全景应用程序。我目前仍在忙于 UI,因为我正在尝试这些功能,然后我偶然发现了一个我无法解决的问题。你看,我有两个用于某种登录表单的复选框。一个是“记住我”,另一个是“自动登录”复选框。我想要的操作是,当我取消选中“记住我”时,我希望取消选中并禁用“自动登录”复选框。我能够做到,但反过来总是会导致错误。我曾经编写过简单的 PHP Web 应用程序和 JavaScript,所以我有一些编程知识,但 C# 对我来说相当陌生。

private void RememberMe_Unchecked(object sender, RoutedEventArgs e)
{
AutoSignIn.IsChecked = false;
AutoSignIn.IsEnabled = false;
}

那个可以,但这个不行:

private void RememberMe_Checked(object sender, RoutedEventArgs e)
{
AutoSignIn.IsEnabled = true;
}

后者抛出“NullReferenceException 未处理”错误。

我的 XAML 代码如下所示:

<CheckBox Content="Remember me" Height="71" Name="RememberMe" Unchecked="RememberMe_Unchecked" Checked="RememberMe_Checked" IsEnabled="True" IsChecked="True" />
<CheckBox Content="Sign me in automatically" Height="71" Name="AutoSignIn" IsEnabled="True" IsChecked="True" />

我做了一些研究,我的方法似乎是错误的,但我不确定如何让它发挥作用。

最佳答案

如果没有 XAML,我无法 100% 确定,但请确保您没有以编程方式设置 IsChecked 属性。当您这样做时,在页面上正确初始化所有内容之前,将调用 IsChecked 方法一次。因此,虽然 Matt 发布的代码有效:

<CheckBox Name="AutoSignIn" />
<CheckBox Name="RememberMe" Checked="RememberMe_Checked" Unchecked="RememberMe_Unchecked" />

以下不会(因为它会在页面完成初始化之前尝试引用 AutoSignIn 框)

<CheckBox Name="AutoSignIn" />
<CheckBox Name="RememberMe" IsChecked="True" Checked="RememberMe_Checked" Unchecked="RememberMe_Unchecked" />

要解决此问题,您可以通过编程方式而不是在 XAML 中设置 IsChecked 属性,或者可能有其他人可以为您指出的其他方法。

关于c# - 以编程方式启用 Windows Phone 7 应用程序中禁用的复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3938710/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com