这是我的代码。我无法访问函数中的构造函数值。
public partial class ForgotPassword : UserControl
{
private string mobile_num2 = "";
public ForgotPassword(string _mobile_num)
{
mobile_num2 =_mobile_num;
MessageBox.Show(mobile_num2);//Getting Value here
InitializeComponent();
}
private void btn_submit_Click(object sender, RoutedEventArgs e)
{
string val_conf_pwd;
string conf_pwd = txt_new_conf_pwd.Password;
val_conf_pwd = c.validate_conf_Password(pwd, conf_pwd);
if (val_conf_pwd == "success")
{
MessageBox.Show(mobile_num2);//Getting Null Value Here
}
}
}
答案 0 :(得分:0)
如果这是你的实际代码(而且不仅仅是你在构造函数中实际声明了另一个 local 变量而不是将值赋给字段)那么我怀疑问题是那个实例调用的btn_submit_Click
与使用非null值构造的ForgotPassword
不同。
因此,您需要查看构建mobile_num2
的任何实例的位置 - 您将无法构建新实例并希望它具有与camelCase
相同的{{1}}值除非您明确地将正确的值传递给构造函数,否则现有实例。
(顺便说一句,我鼓励你为方法和变量使用更多的传统名称 - 仅{{1}}没有下划线。但显然这不是出错的部分。