我有三种形式,主要的,销售和登录。
在主表单中,我有一个计时器,例如5分钟后将启动登录表单。
我可以打开“销售”表单的“主表单”,关闭“主表单”,这样就会启动“登录”表单。
问题是“登录”表单没有集中在“销售”表单的顶部,因此用户必须登录才能使用“销售”表单。
主要形式的一些代码:
public void timer_Tick(object sender, EventArgs e)
{
timer.Stop();
LoginDialog loginForm = new LoginDialog();
loginForm.TopLevel = true;
loginForm.ShowDialog();
timer.Start()
}
private void pbSales_Click(object sender, EventArgs e)
{
Sales salesForm = new Sales();
salesForm .ShowDialog(this);
}
Run Code Online (Sandbox Code Playgroud)
编辑
尝试将两者结合起来可能会适合您。
private void frmMain_Shown(object sender, EventArgs e)
{
// Make this form the active form and make it TopMost
this.ShowInTaskbar = false;
this.TopMost = true;
this.Focus();
this.BringToFront();
this.TopMost = false;
}
Run Code Online (Sandbox Code Playgroud)
试试这个
yourForm.TopMost = true;
Run Code Online (Sandbox Code Playgroud)
要么
yourform.BringToFront()
Run Code Online (Sandbox Code Playgroud)
我认为问题是您ShowDialog
从打电话MainForm
,并且您也打开了销售表格。
对话框的父级恰好是MainForm
,所以也许您可以尝试使用
loginForm.ShowDialog(saleform1);
salesform1 是您从主窗体打开的销售窗体的实例名称。
归档时间: |
|
查看次数: |
8493 次 |
最近记录: |