c# 网站嵌套在winform里面 那么如何通过网站怎么关闭winform程序?

c# 网站嵌套在winform里面 那么如何通过网站怎么关闭winform程序?,第1张

using System

using System.Collections.Generic

using System.ComponentModel

using System.Data

using System.Drawing

using System.Text

using System.Windows.Forms

namespace WebBrowserTest

{

    // This first namespace is required for the ComVisible attribute used on the ScriptManager class.

    using System.Runtime.InteropServices

    using System.Windows.Forms

    // This is your form.

    public partial class Form1 : Form

    {

        /// <summary>

        /// 必需的设计器变量。

        /// </summary>

        private System.ComponentModel.IContainer components = null

        /// <summary>

        /// 清理所有正在使用的资源。

        /// </summary>

        /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>

        protected override void Dispose(bool disposing)

        {

            if (disposing && (components != null))

            {

                components.Dispose()

            }

            base.Dispose(disposing)

        }

        #region Windows 窗体设计器生成的代码

        /// <summary>

        /// 设计器支持所需的方法 - 不要

        /// 使用代码编辑器修改此方法的内容。

        /// </summary>

        private void InitializeComponent()

        {

            this.WebBrowser1 = new System.Windows.Forms.WebBrowser()

            this.SuspendLayout()

            // 

            // WebBrowser1

            // 

            this.WebBrowser1.Dock = System.Windows.Forms.DockStyle.Fill

            this.WebBrowser1.Location = new System.Drawing.Point(0, 0)

            this.WebBrowser1.MinimumSize = new System.Drawing.Size(20, 20)

            this.WebBrowser1.Name = "WebBrowser1"

            this.WebBrowser1.Size = new System.Drawing.Size(544, 300)

            this.WebBrowser1.TabIndex = 0

            // 

            // Form1

            // 

            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F)

            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font

            this.ClientSize = new System.Drawing.Size(544, 300)

            this.Controls.Add(this.WebBrowser1)

            this.Name = "Form1"

            this.Text = "Form1"

            this.ResumeLayout(false)

        }

        #endregion

        private System.Windows.Forms.WebBrowser WebBrowser1

        // This nested class must be ComVisible for the JavaScript to be able to call it.

        [ComVisible(true)]

        public class ScriptManager

        {

            // Variable to store the form of type Form1.

            private Form1 mForm

            // Constructor.

            public ScriptManager(Form1 form)

            {

                // Save the form so it can be referenced later.

                mForm = form

            }

            // This method can be called from JavaScript.

            public void MethodToCallFromScript()

            {

                // Call a method on the form.

                mForm.DoSomething()

            }

            // This method can also be called from JavaScript.

            public void AnotherMethod(string message)

            {

                MessageBox.Show(message)

            }

        }

        // This method will be called by the other method (MethodToCallFromScript) that gets called by JavaScript.

        public void DoSomething()

        {

            // Indicate success.

            MessageBox.Show("I will close!")

            this.Close()

        }

        // Constructor.

        public Form1()

        {

            // Boilerplate code.

            InitializeComponent()

            // Set the WebBrowser to use an instance of the ScriptManager to handle method calls to C#.

            WebBrowser1.ObjectForScripting = new ScriptManager(this)

            // Create the webpage.

            WebBrowser1.DocumentText = @"<html>

                <head>

                <title>Test</title>

                </head>

                <body>

            <input type=""button"" value=""Go!"" onclick=""window.external.MethodToCallFromScript()"" />

                    <br />

                    <input type=""button"" value=""Go Again!"" onclick=""window.external.AnotherMethod('Hello')"" />

                </body>

                </html>"

        }

    }

}

不太明白你的意思

是不是可以这么理解:关闭所有窗体 = 退出程序 = 结束当前进程

那么,Process.GetCurrentProcess().Kill()

那你是问锁屏还是问关闭窗体?

在A程序的Form1里,获取到B程序的窗口Form2,然后

C# code?

1

2

3

4

private void Form1_Activated(object sender, EventArgs e)

{

Form2.BringToFront()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8065963.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存