0

我正在使用 C# 中的 webbrowser 控件为我们的桌面应用程序通过网关运行信用卡。

简单地说,我正在加载表单加载页面:

public Form1()
{
  InitializeComponent();

  webBrowser1.Url = new Uri("https://paymentgateway.com/hosted.aspx?" +
                            "Username=dddd" +
                            "&Password=dddd" +
                            "&MerchantKey=5159" +
                            "&BillingAddress1=123 some street" +
                            "&BillingCity=Somewhere" +
                            "&BillingState=SC" +
                            "&BillingZip=39399" +
                            "&CustomerName=me" +
                            "&Amount=392.00" +
                            "&InvNum=123567" +
                            "&AccountNumber=0133333" +
                            "&CustomerId=0199999");


}

(出于安全原因,所有参考资料均已更改)

该页面如下所示:

门户网站

我的问题是,单击“处理”按钮后如何获取响应然后关闭表单?我需要知道它是否被批准以及从那时起的其余信息。

我无法控制按钮,所以我不确定如何捕获响应。

再次感谢!

4

2 回答 2

2

您似乎需要订阅DocumentCompleted事件并通过 Document、DocumentText 或 DocumentStream 处理那里的响应。

然后,您将根据输出的内容做出适当的反应。例如:

private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
  HtmlDocument document =  webBrowser1.Document;
  //now use any of the methods exposed by HtmlDocument to parse the output
}
于 2012-04-18T15:55:19.537 回答
0

在您的表单中,您可以创建一个公共方法来获取您可以从调用表单的位置访问的信息。您可以在 dialogResult == DialogResult.OK 上调用此方法,如下所示:

        object your_info;

        Form1 form1 = new Form1();
        if (form1.DialogResult == DialogResult.OK)
        {
            your_info = form1.getInfo();
        }
于 2012-04-18T15:50:40.633 回答