我有一个用户控件在我的主窗体上调用一个方法,这个方法应该在同一个窗体上启用一个按钮(默认情况下这个按钮被禁用),但它不起作用。
private void button1_Click(object sender, EventArgs e)
{
Form1 fr = new Form1();
fr.login(textBox1.Text, textBox2.Text);
}
这是我的方法
public void login(string username, string password)
{
Connect();
sendMessage("LoginAction,Username=" + username + "UserPassword=" + password);
}
这是按钮启用的位置
private void commandInterpreter(string Message)
{
if(Message.Contains("LoginSuccess,") == true)
{
name = Message.Remove(Message.IndexOf("LoginSuccess,Name="), 18);
Bt2En = true;
}
}
这是我公开我的按钮属性的地方:
public bool Bt2En
{
get { return button2.Enabled; }
set { button2.Enabled = value; }
}
答案 0 :(得分:0)
我解决了我的问题,这些是我在Form1中的方法:
public void login()
{
Connect();
Login lg = this.lg;
string username = lg.Username;
string password = lg.Password;
MessageBox.Show(username + "\n" + password);
}
private void button1_Click(object sender, EventArgs e)
{
login();
}
这个来自我的用户控件:
public string Username
{
get { return textBox1.Text; }
}
public string Password
{
get { return textBox2.Text; }
}
感谢Steve和Bradley Uffner的帮助以及所有尝试过的人。我发布了有同样问题的答案。
答案 1 :(得分:-1)
Bt2En是一个属性,但您可以使用方法等。
public void bt2En(bool flag)
{
if(flag)
button.Enable=true;
}