2009-05-21 3 views
1

J'essaie d'apprendre et d'utiliser un SDK pour le produit d'un fournisseur. Malheureusement, la documentation est sommaire et j'ai rencontré un vide dans ma connaissance du Framework .Net.Comment faire pour obtenir Handle.ToInt32() dans une application Web ASP.NET

J'ai un code de travail pour une application Windows Forms et j'essaie de le faire fonctionner dans une application web ASP.NET. La documentation du fournisseur implique que vous pouvez le faire mais vous pouvez peut-être pas ..

Snippet de l'application des fenêtres de travail:

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; 

Maintenant, voici ma tentative à l'intérieur de gestionnaire d'événements de clic pour une page .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; 
    } 

Je reçois une plainte de compilation dans la ligne juste au-dessus qui se lit « le nom « poignée » ne

existe pas dans le contexte actuel. Cette partie du SDK, je suis en train t o use affiche diverses boîtes de dialogue modales qui reflètent les propriétés du produit pour faciliter le développement "client". Je crains que ce ne soit que des "clients Windows" et que les applications Web ASP.NET ne puissent pas le faire.

Y at-il quelque chose que je peux ajouter pour résoudre ce problème?

Répondre

2

Pour les applications Web, les boîtes de dialogue modales seraient effectuées sur le client, généralement via javascript et dhtml - pas sur le serveur (où le code ASP.NET s'exécute). Donc je crains que ce produit ne soit en effet que des winforms.

+0

Merci Marc. Je me doutais que cela pourrait ne pas être possible. Je me demande si ce genre de problème est ce que WPF (Windows Presentation Foundation) est en train de résoudre ... WPF est sur ma [longue] liste de choses à lire sur ... –

+0

Pour le web? "Silverlight" plus que WPF - mais ce n'est pas winforms. Sinon, ClickOnce ou XBAP - beaucoup plus à lire ;-p –

0

Il suffit de passer le:

int hwnd = 0; 

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