如何在ASP.NET Web应用程序中获取Handle.ToInt32()

时间:2009-05-21 20:11:48

标签: c# asp.net windows handle

我正在尝试为供应商的产品学习和使用SDK。不幸的是,文档是粗略的,我在自己对.Net框架的了解中遇到了一个空白。

我有一些Windows窗体应用程序的工作代码,我试图让它在ASP.NET Web窗体应用程序中工作。供应商文档暗示您可以这样做,但也许你不能......

来自工作窗口应用程序的

小部件:

using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using TRIMSDK;

private void ConnectUserBtn_Click(object sender, System.EventArgs e)
{
Database db = new Database();
Databases dbChooser = new Databases();
IDatabase dbI = dbChooser.ChooseOneUI(Handle.ToInt32());
if (dbI == null)
{
    return;
}
db.Id = dbI.Id;

现在,这是我在.ASPX页面的点击事件处理程序中的尝试:

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using TRIMSDK;

protected void ConnectUserBtn_Click(object sender, EventArgs e)
{
    Database db = new Database();
    Databases dbChooser = new Databases();
    IDatabase dbI = dbChooser.ChooseOneUI(Handle.ToInt32());
    if (dbI == null)
    {
        return;
    }

我在上面的行中得到一个编译投诉,上面写着“当前上下文中不存在名称'Handle'。

我试图使用的这部分SDK显示了各种模态对话框,这些对话框反映了产品的属性,以方便“客户端”开发。我担心它可能只是“Windows客户端”,ASP.NET Web应用程序无法做到这一点。

我可以添加一些东西来解决这个问题吗?

2 个答案:

答案 0 :(得分:2)

对于Web应用程序,模式对话框将在客户端完成,通常通过javascript和dhtml - 而不是在服务器上(ASP.NET代码执行的地方)。所以我担心这个产品确实只是winforms。

答案 1 :(得分:0)

传递它:

int hwnd = 0;

IDatabase dbI = dbChooser.ChooseOneUI(hwnd);