【NanUI】winform界面和NanUI联合使用:从winform窗体启动然后跳转至NanUI窗体

1. Program.cs程序设置

NanUIQQ群:521854872,以下用法在群资源里作者上传的有一个简单的视频参考。

 /*先启动winform后续启动nanui*/
            WinFormium.CreateRuntimeBuilder(
                env => { },
                app => {
                    app.UseEmbeddedFileResource("http", "assembly.app.local", "EmbeddedRes");
                    app.UseMainWindow(context => {
                        context.MainForm = new winformwindow();//“winformwindow”是基于Form的winform窗体,这里要注意这么写,是Nanui“CreateRuntimeBuilder()”中启动winform窗体的方式
                        return null;
                    });

                }

                ).Build().Run();

2.winformwindow.cs(这个是winform窗体)程序设置

通过点击该winform窗体中的按钮button1,实现跳转至NanUI的Formium窗口。“start_window()”是一个基于Formium的一个NanUI启动窗口。

        private void button1_Click(object sender, EventArgs e)
        {
            start_window form01 = new start_window();//Formium窗口
            this.Hide();
            form01.ShowDialog();
            this.Dispose();
        }

(winformwindow)
在这里插入图片描述
点击button1后,跳转至start_window.

(start_window)
在这里插入图片描述

3.NanUI的Formium类型的启动窗体(start_window)继续跳转至另一个Formium类型的主窗体(Mainform)

01.start_window.cs程序设置

 protected override void OnReady()
        {
        	//注册 JavaScript 对象
            var jsObject = new JavaScriptObject();
           
            注册同步方法launchDemo02,用于在start_window对应的startui.html中点击按钮跳转
            jsObject.Add("launchDemo02", (args =>
            {
                InvokeIfRequired(() =>
                {
                    Mainform form2 = new Mainform();//要跳转到的Formium主窗体
                    //Close(true);//Close关不上不知为何,用了Hide(),求大神讲解;
                    Hide();
                    form2.ShowDialog();


                });
                return null;
            }));
			//然后将这个对象注册到 JavaScript 环境的Formium.external里,并取名launcher。
            RegisterJavaScriptObject("launcher", jsObject);
        }

这里使用Close()方法关不上start_window不知为何,用了Hide(),求大神讲解;
02. startui.html程序设置

<body>
    <h2>22222222222222222222</h2>
    <button onclick="Formium.external.launcher.launchDemo()">启动</button>
    <button onclick="Formium.external.launcher.launchDemo02()">启动02</button>
</body>

(start_window)在这里插入图片描述
点击“启动02”跳转至Mainform界面

(Mainform界面)
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值