怎样保持两个Form同时可见或不可见

eplanet 2009-03-04 09:23:59
有两个Form

我想保持这两个的可见性一致,Form1显示的时候Form2也显示,Form1不可见的时候Form2也不可见。

这里的可见是指如果有其他程序的窗口相互遮挡的时候,两个Form出于相同的层。
...全文
86 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
eplanet 2009-03-04
  • 打赏
  • 举报
回复
谢谢cppfaq了

你的方法没好用,我的需求是,有其他程序的窗口时,将其他程序的窗口激活(在最前),这时,看不到两个Form了,点击任务栏,使Form1激活,但Form2这个时候看不到(Form在任务栏上没有图标)

受你的启发,解决了

private void Form1_Activated(object sender, EventArgs e)
{
Form2 f2= new Form2();
f2.BringToFront();
}
eplanet 2009-03-04
  • 打赏
  • 举报
回复
to cppfaq:

试了你的方法,还是不行,有其他程序的窗口的时候,做不到可见性一致。

比如打开一个IE,这时看不到两个窗口了。再通过任务栏点击让Form1成为活动窗口,但Form2这时是看不到的。
cppfaq 2009-03-04
  • 打赏
  • 举报
回复
using System;
using System.Windows.Forms;

namespace WinForm
{
public partial class Form1 : Form
{

private Form2 form2 = new Form2();

protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
VisibleChanged += new EventHandler(Form1_VisibleChanged);
}

void Form1_VisibleChanged(object sender, EventArgs e)
{
form2.Visible = Visible;
}

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧