我有两种形式:Form1 是我的应用程序,Form2 是登录页面。我想将输入到 Form2 上的用户名文本框 (LoginTbox) 中的值传递给 Form1。这就是我到目前为止所拥有的。没有收到错误,但似乎什么也没传递。我已经尝试过构造函数,但似乎也无法让它工作。我究竟做错了什么?
程序.cs
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Form2 fLogin = new Form2();
if (fLogin.ShowDialog() == DialogResult.OK)
Application.Run(new Form1());
else
Application.Exit();
}
Form2(登录表格)
public string strVar = string.Empty;
public Form2()
{
InitializeComponent();
}
public void button1_Click(object sender, EventArgs e)
{
strVar = loginTbox.Text.ToString();
string _pass = textBox2.Text;
string conStr = "Data Source=CA-INVDEV\\RISEDB01;Initial Catalog=RISEDB01;Integrated Security=True";
string sqlcmd = "select * from accounts where Username=@Username and Password=@Password";
using (SqlConnection conn = new SqlConnection(conStr))
{
conn.Open();
SqlCommand cmd = new SqlCommand(sqlcmd, conn);
cmd.Parameters.AddWithValue("@Username", _username);
cmd.Parameters.AddWithValue("@Password", _pass);
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
MessageBox.Show("Login Successful");
}
else
{
MessageBox.Show("Login Failed Invalid Credentials. Please try again");
Application.Restart();
}
}
}
Form1(应用程序)
private void button7_Click(object sender, EventArgs e)
{
if (textBox6.Text != "")
{
Form2 frm = new Form2();
string strValue = frm.strVar;
string Owner = textBox6.Text;
string Time = DateTime.Now.ToString(@"MM\/dd\/yyyy h\:mm tt");
string Serial = textBox4.Text;
string conStr = "Data Source=CA-INVDEV\\RISEDB01;Initial Catalog=RISEDB01;Integrated Security=True";
string sqlcmd2 = "Select * from Sheet1 where Serial#=@Serial#";
string sqlcmd = "UPDATE Sheet1 SET Owner=@Owner, Checked_In=NULL, Checked_Out=@Checked_Out, Modified_By=@Modified_By WHERE Serial#=@Serial#";
using (SqlConnection conn = new SqlConnection(conStr))
{
conn.Open();
SqlCommand cmd = new SqlCommand(sqlcmd, conn);
SqlCommand cmd2 = new SqlCommand(sqlcmd2, conn);
cmd2.Parameters.AddWithValue("@Serial#", Serial);
cmd.Parameters.AddWithValue("@Serial#", Serial);
cmd.Parameters.AddWithValue("@Owner", Owner);
cmd.Parameters.AddWithValue("@Checked_Out", Time);
cmd.Parameters.AddWithValue("@Modified_By", strValue);
SqlDataReader dr = cmd2.ExecuteReader();
if (dr.HasRows)
{
dr.Close();
cmd.ExecuteNonQuery();
conn.Close();
Form1_Load();
}
else
{
dr.Close();
MessageBox.Show("Serial Does Not Exist");
textBox4.Clear();
}
}
}
else
{
MessageBox.Show("Owner was not assigned to asset. Please provide a Owner for this asset");
}
}