asp.net c# Design Pattern WebService Windows Report Control Mobile Symbin Windows Phone 7 Visual Studio 2011

C#实现Web程序调用Windows程序的方法

Posted on 2007-12-03 12:20  笑缘  阅读(1048)  评论(2编辑  收藏  举报
using System;
using System.Windows.Forms;
using System.Security.Permissions;

[PermissionSet(SecurityAction.Demand, Name
="FullTrust")]
[System.Runtime.InteropServices.ComVisibleAttribute(
true)]
public class Form1 : Form
{
    
private WebBrowser webBrowser1 = new WebBrowser();
    
private Button button1 = new Button();

    [STAThread]
    
public static void Main()
    
{
        Application.EnableVisualStyles();
        Application.Run(
new Form1());
    }


    
public Form1()
    
{
        button1.Text 
= "call script code from client code";
        button1.Dock 
= DockStyle.Top;
        button1.Click 
+= new EventHandler(button1_Click);
        webBrowser1.Dock 
= DockStyle.Fill;
        Controls.Add(webBrowser1);
        Controls.Add(button1);
        Load 
+= new EventHandler(Form1_Load);
    }


    
private void Form1_Load(object sender, EventArgs e)
    
{
        webBrowser1.AllowWebBrowserDrop 
= false;
        webBrowser1.IsWebBrowserContextMenuEnabled 
= false;
        webBrowser1.WebBrowserShortcutsEnabled 
= false;
        webBrowser1.ObjectForScripting 
= this;
        
// Uncomment the following line when you are finished debugging.
        
//webBrowser1.ScriptErrorsSuppressed = true;

        webBrowser1.DocumentText 
=
            
"<html><head><script>" +
            
"function test(message) { alert(message); }" +
            
"</script></head><body><button " +
            
"onclick=\"window.external.Test('called from script code')\">" +
            
"call client code from script code</button>" +
            
"</body></html>";
    }


    
public void Test(String message)
    
{
        MessageBox.Show(message, 
"client code");
    }


    
private void button1_Click(object sender, EventArgs e)
    
{
        webBrowser1.Document.InvokeScript(
"test",
            
new String[] "called from client code" });
    }


}


Copyright © 2024 笑缘
Powered by .NET 8.0 on Kubernetes

asp.net c# Design Pattern WebService Windows Report Control Mobile Windows Phone Visual Studio
asp.net c# Design Pattern WebService Windows Report Control Mobile