C# Winform中如何实现窗体之间的跳转

 我来答
娱乐小八卦啊a
高粉答主

2019-10-25 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117856

向TA提问 私信TA
展开全部

1、把子窗体的接收框改变成public。让外部可以访问。因为要把子窗体的内部对象公开,所以不符合代码原则。

2、在子窗体中加一个公开的方法,让外部调用( 对修改关闭,对扩展开放)

代码如下:

namespace Demo{    

public partial class ParentFrm : 

Form    {        //定义委托        

public Action<string> atcSend { get; set; }         

private ChildFrm ChildFrm { get; set; }//低级办法         

public ParentFrm()        {            

InitializeComponent();        }        

private void ParentFrm_Load(object sender, EventArgs e)        {            

ChildFrm frm = new ChildFrm();            

ChildFrm = frm;//低级办法            //子窗体弹出来之前关注父窗体的消息变化            

atcSend += frm.TextStr;            

frm.Show();        

}


扩展资料

static void Main()

{Application.Run(new FormName());

}

FormName就是想启动的第一个窗体。

实现窗体之间的跳转:程序首先运行的是“登录”窗体,如果是新用户,就需要注册,再登录窗体,单击注册按钮,打开学生注册窗体,就需要实现窗体之间的跳转。显示窗体的方法有两种:

一种是Show()方法,另一种是ShowDialogue()方法,前者是直接显示,后者是以模式对话框的方式显示。

参考资料来源:

百度百科——父窗口子窗口

耐链处丨1l
推荐于2017-11-26 · 超过72用户采纳过TA的回答
知道答主
回答量:134
采纳率:0%
帮助的人:68万
展开全部
实现窗体之间的跳转 一种是Show()方法,另一种是ShowDialogue()方法,前者是直接显示,后者是以模式对话框的方式显示。 这里先介绍第一种方法:分为两步首先创建窗体对象,然后再显示窗体。语法如下被调用的窗体类对象名=new被调用的窗体类();对象名.Show(); 示例:首先打开窗体“frmLogin”,双击“注册”按钮,在注册按钮的Click事件里编写代码:privatevoidbtnReg_Click(object sender,EventArgse){frmRegisterobjfrm=newfrmRegister(); objfrm.Show();}我们再来看第二种方法: 模式对话窗体showDialog()的使用面对多窗口的调用的时候,我们往往不喜欢窗口之间的随意切换,那样还要花费时间寻找我们需要的窗口。如果业务操作流程一但出现问题,窗口的顺序也有可能被再次打乱,很不顺手。我们可以将show方法转化为showDialog()方法,顾名思义,showDialog()是一个进行路经绑定的show方法,它是不可以自由切换的,换言之,就是当你没有关闭你当前页的前提下,你是无法关闭该页面后面的任一页面的,它是当前唯一(路经打开)为true的。showDialog()是模式窗体,与show方法的主要区别在于以showDialog()打开的窗体,要等当前窗体关闭后才能操作其他窗体,而show()方法则不受此限制。建立showDialog()的方法比较简单,比如建立两个Form窗体,通过第一个Form窗体上的Button按钮打开另一个窗体。单击一个窗体的button按钮打开另一个窗体源代码:privatevoidbutton1_Click(object sender,EventArgse){Form2f2=newForm2();//首先将另一个窗口Form2实例化 f2this.Visible=false;//将当前窗口设置为不可视;如果不这样处理则系统报错。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式