我目前有两种形式,即主要表单和登录表单。
我的主要形式是我Application.Run()
;我的登录表单只是一个对话框。
我已经创建了一个重新加载数据的函数。我的问题是如果我退出我的主表单,然后再次登录,主表单将不会自动刷新。我已将我的刷新功能放在form_load事件上。我试着为刷新创建一个按钮,它正如我想要的那样工作。一旦我登录其他用户,如何使刷新功能自动更改?
这是在我的program.cs:
Application.Run(new Main_Form());
这是我主要形式的内容:
public partial class Main_Form : Form
{
Login log = new Login();
}
private void Main_Form_Load(object sender, EventArgs e)
{
log.ShowDialog();
}
private void logoutToolStripMenuItem_Click(object sender, EventArgs e)
{
DialogResult dialogResult = MessageBox.Show("Are you sure you want to logout?", "Logout", MessageBoxButtons.YesNo);
if (dialogResult == DialogResult.Yes)
{
spms.classes.FormProvider.MainMenu.Hide();
log.uname.Text = ("");
log.pwd.Text = ("");
log.ShowDialog();
log.uname.Focus();
}
}
答案 0 :(得分:1)
关闭登录窗口时:
YourDialog dialog = new YourDialog(...);
if(dialog.DialogResult == DialogResult.OK) //logged in successful
{
...
YourRefreshButton_Click(...);
}
对于您的对话框,如果您已登录,则必须为登录按钮或控件设置this.DialogResult = DialogResult.OK
。
答案 1 :(得分:0)
使用.Visible
属性进行游戏:
logoutToolStripMenuItem.Visible = false; //make it invisible