0

Winformsにアプリがあります。VS 2010 C#。私がやろうとしているのは、ログインしているユーザーがF12キーを押すと、ログインフォームが表示され、別のユーザーがユーザー名とパスワードを入力してログインしたときです。

Login.cs、Program.cs、Form1.csを添付しました

私のメインフォーム(Form1.cs)では、ユーザーがF12キーを押すとログインフォームを表示できますが、ユーザー名とパスワードを入力しても何も起こりません。

現在、ユーザーが初めてログインしたときにユーザー名をキャプチャしています。また、F12キーを押してログインしたときに新しいユーザーをキャプチャしたいと思います。

ラベルにユーザー名を表示しています

label1.Text = myuser.getUserName();

Keypressイベントの下でFORM.CSのコードを試しましたが、機能しません

//////////**Program.CS**////////////////


namespace BusinessLayer
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            DialogResult result;
            var loginForm = new Login();
            result = loginForm.ShowDialog();
            if (result == DialogResult.OK)
            {
                // login was successful


                Application.Run(new Form1(loginForm.usr));
            }
        }
    }
}
///////////////////////////////////**Login.CS**/////////////////////


namespace BusinessLayer
{
    public partial class Login : Form
    {
        UserName myuser;
        public Login()
        {
            InitializeComponent();
        }

        private void btnLogin_Click(object sender, EventArgs e)
        {


            if (CheckPasswordManager.CheckPassword(txtUserID.Text, txtPassword.Text) > 0)
            {
                usr = new UserName(txtUserID.Text);
                DialogResult = DialogResult.OK;
            }

            else
            {
                MessageBox.Show("wrong");

            }



        }


        public UserName usr
        {
            get
            {
                return myuser;
            }
            set
            {
                myuser = value;
            }
        }

    }
}

//////////////////////**Form1.CS**////////////////


namespace BusinessLayer
{
    public partial class Form1 : Form
    {
        UserName myuser;
        public Form1(UserName usr)
        {
            myuser = usr;
            InitializeComponent();

        }





        private void Form1_Load(object sender, EventArgs e)
        {
            dataGridView1.DataSource = BookingManager.GetList();
            label1.Text = myuser.getUserName();


            int GetBookEntryID = Int32.Parse(this.dataGridView1.CurrentRow.Cells["booking_entry_id"].Value.ToString());

           dataGridView2.DataSource = ProcessManager.GetList(GetBookEntryID);



          }

        private void Form1_KeyDown(object sender, KeyEventArgs e)
        {

            String s = e.KeyCode.ToString();

            switch (s)
            {
                case "F12":
                    var loginForm = new Login();

                    this.Hide();
                    var loginForm = new Login();
                    loginForm.Show();



            }

        }


}

}

////////////////username.cs

namespace PassUsername
{
    public class Username
    {
        string userName;

        public Username(string uName)
        {
            userName = uName;

        }
        public string getUserName()
        {
            return userName;
        }
    }
}
4

0 に答える 0