私のアプリである Form1 とログインページである Form2 の 2 つのフォームがあります。Form2 のユーザー名テキスト ボックス (LoginTbox) に入力された値を Form1 に渡したいです。これは私がこれまでに持っているものです。エラーは受信されませんが、何も渡されていないようです。私はコンストラクターを試しましたが、それを機能させることもできませんでした。私は何を間違っていますか?
Program.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");
}
}