我做了一个小程序,如果登陆成功的话就最小化窗口,
添加了最小化事件如下:
private void Form1_SizeChanged(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.Hide();
//this.ShowInTaskbar = false; //加上这句后,出现异常
this.notifyIcon1.Visible = true;
this.notifyIcon1.ShowBalloonTip(1, "Lin-Loginer", lbinfo.Text, ToolTipIcon.Info);
}
}
我也在一个按钮的点击事件添加了以下代码:
private void btlogin_Click(object sender, EventArgs e)
{
//……
//if登录成功,则最小化
this.WindowState = FormWindowState.Minimized;
//……
}然后点击最小化按钮的时候,一切正常,也就是:隐藏了界面、任务栏图标,并在托盘显示。
如果我手动点击“登录”按钮的时候,也可以实现上面要求。
但是当我在加载窗体时调用按钮点击事件的时候,就只能隐藏界面,但是显示任务栏图标。也就是任务栏图标无法隐藏。
我调用方法如下:
public Form1()
{
InitializeComponent();
if(cbAutoLogin.Checked )//如果勾选了自动登录复选框
{
this.btlogin_Click(null,null);//调用按钮点击事件
}
}如果我在private void Form1_SizeChanged(object sender, EventArgs e)方法里加上this.ShowInTaskbar = false;
就会抛出异常: 未处理的“System.StackOverflowException”类型的异常出现在 System.Windows.Forms.dll 中。请问还有什么好的办法能在窗体加载时调用点击事件就可以隐藏界面及任务栏图标吗?
添加了最小化事件如下:
private void Form1_SizeChanged(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.Hide();
//this.ShowInTaskbar = false; //加上这句后,出现异常
this.notifyIcon1.Visible = true;
this.notifyIcon1.ShowBalloonTip(1, "Lin-Loginer", lbinfo.Text, ToolTipIcon.Info);
}
}
我也在一个按钮的点击事件添加了以下代码:
private void btlogin_Click(object sender, EventArgs e)
{
//……
//if登录成功,则最小化
this.WindowState = FormWindowState.Minimized;
//……
}然后点击最小化按钮的时候,一切正常,也就是:隐藏了界面、任务栏图标,并在托盘显示。
如果我手动点击“登录”按钮的时候,也可以实现上面要求。
但是当我在加载窗体时调用按钮点击事件的时候,就只能隐藏界面,但是显示任务栏图标。也就是任务栏图标无法隐藏。
我调用方法如下:
public Form1()
{
InitializeComponent();
if(cbAutoLogin.Checked )//如果勾选了自动登录复选框
{
this.btlogin_Click(null,null);//调用按钮点击事件
}
}如果我在private void Form1_SizeChanged(object sender, EventArgs e)方法里加上this.ShowInTaskbar = false;
就会抛出异常: 未处理的“System.StackOverflowException”类型的异常出现在 System.Windows.Forms.dll 中。请问还有什么好的办法能在窗体加载时调用点击事件就可以隐藏界面及任务栏图标吗?
解决方案 »
- 应用程序的分层和程序权限控制
- 各位大哥,谁知道关于发送传真的问题吗
- 跪求C#中如何绘制棒装图。人人有分!!!
- Xml 里面的 CDATA 类型数据如何读取,下面这个CDATA 数据就是一个表的数据。如何读取CDATA数据并转化为datatable或者其他对象数组等,或者其他类型数据也可以。请教高人指教
- 下载了Rational.XDE.v2003.Developer.Plus.NET二CD,但里面的文件后缀名为.bin,请问如何安装?
- 分享asp图片预览代码
- update inventory set quantity =quantity-为什么不行啊
- VS2008中 C# winform 下开发的水晶报表显示出来的数据为什么不能够在报表上直接选中复制?怎么解决?
- 新手问题十五贴-------给出解决方案和代码。一个经典ui的设计方法。
- 先来有分:cs0163错误是怎么回事?什么叫“不能贯穿”?请指教!!msdn中的我没看懂:(
- 该进程无法访问文件,因为该文件正由另一进程使用! 并发错误
- gridView中绑定列的绑定表达式(DataField)?
this.Hide(); 或者,直接在设计视图中,把ShowInTaskbar 设置为 false;
如果在设计图中修改this.ShowInTaskbar = false;
那么窗口没有最小化也看不到任务栏图标呢。
我想在最小化时才隐藏任务栏图标。
{
this.Show();
this.WindowState = FormWindowState.Maximized;
}
protected override void OnSizeChanged(EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.Hide();
this.notifyIcon1.Icon = this.Icon;
this.notifyIcon1.Visible = true;
this.notifyIcon1.Text = "测试";
}
//base.OnSizeChanged(e);
}