Как получить Handle.ToInt32 () в веб-приложении ASP.NET - PullRequest
1 голос
/ 22 мая 2009

Я пытаюсь изучить и использовать SDK для продукта поставщика. К сожалению, документация отрывочна, и я столкнулся с пробелом в моих собственных знаниях .Net Framework.

У меня есть некоторый рабочий код для приложения Windows Form, и я пытаюсь заставить его работать в приложении веб-формы ASP.NET. Документация поставщика подразумевает, что вы можете сделать это, но, возможно, вы не можете ..

Фрагмент из рабочего приложения Windows:

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 не могут этого сделать.

Есть ли что-то, что я могу добавить, чтобы решить эту проблему?

Ответы [ 2 ]

2 голосов
/ 22 мая 2009

Для веб-приложений модальные диалоги будут выполняться на клиенте, обычно через javascript и dhtml, а не на сервере (где выполняется код ASP.NET). Так что я боюсь, что этот продукт действительно только winforms.

0 голосов
/ 23 июля 2009

Просто передайте это:

int hwnd = 0;

IDatabase dbI = dbChooser.ChooseOneUI(hwnd);
...