如我有WinForm程序如
namespace WebClinet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("OK!");
        }
    }
}然后在WebForm中如何触发这个点击事件

解决方案 »

  1.   

    控件:
    public void button1_Click(object sender, System.EventArgs e)
    {
    MessageBox.Show("click了");
    } public  void ClickButton()
    {
    this.button1_Click(null,null);
    }网页: document.getElementById("object1").ClickButton();以上用vs2003作的控件是可以的,但是2005好像有问题.
      

  2.   

    这个问题好像有些奇怪...就是说客户端点一个按钮,服务器出现一个MessageBox?那管服务器的可有的忙了
      

  3.   

    winform程序在客户端的IE中运行倒是可以的.
      

  4.   

    不是这样的啊
    我这是一个WinForm程序是没有运行在网面中的
    中客户端里的一个WinForm程序
    我要做的是这样的
    网页里面点击打印的时候
    触发客户端里运行的WebPrint这个程序里面的Print_Click也就是那个WinForm程序不是在网页里面的
    而是在客户端里安装运行的
      

  5.   

    直接 使用asp.net 是不可能 调用 客服端 程序的
    要是可以 现在 就病毒 泛滥了.....
    你这样的 需求 
    需要使用activex 来做.
      

  6.   

    做成 Activex 控件吧。或者使用现成的打印控件。网页里调用客户端的软件几乎是不可能的。(用黑客的手段也许能办到。)
      

  7.   

    办法有2个:
    1,做成ActiveX,以前给你过链接。
    2,做自定义URL协议,代码参考http://www.renpeicheng.com/html/2007-03/1653.html,
      

  8.   

    用自定义URL协议行的,
    参考QQ的对话窗口。
      

  9.   

    楼主可以是想实现打印功能,可以到网上找一找关于 ASP.NET 利用 XML 进行打印的资料,我看它做的不错。
      

  10.   

    不是这样的啊
    我这是一个WinForm程序是没有运行在网面中的
    中客户端里的一个WinForm程序
    我要做的是这样的
    网页里面点击打印的时候
    触发客户端里运行的WebPrint这个程序里面的Print_Click也就是那个WinForm程序不是在网页里面的
    而是在客户端里安装运行的
    =====
    原来如此,好办在注册表中写个键值,
    然后就用
    <a href="程序名称:参数"来调用.
      

  11.   

    注册表中HKEY_CLASSES_ROOT下加一个项名称为你的程序名称:然后在这个项下加一个 字串,名称为URL Protocol然后在这个项下添加Shell/Open/Command三个项
    command的默认值改成你的程序路径(含文件) %1 %1是指参数.
      

  12.   

    然后在winform中通过
    System.Environment.CommandLine接收参数.