HighTechTalks DotNet Forums  

Re: .NET HTML View Class?

Dotnet Framework (WinForms) microsoft.public.dotnet.framework.windowsforms


Discuss Re: .NET HTML View Class? in the Dotnet Framework (WinForms) forum.



Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old   
AT
 
Posts: n/a

Default Re: .NET HTML View Class? - 02-09-2005 , 10:08 PM






Greetings Janos,

The only problem with this class is that is only navigate if the
control is visible. I'm traying to make something that works in
background. Once I did this I'll post.

Regards,

Paulo

Janos Zemetzki wrote:
Quote:
Try this one:


// Lutz Roeders's .NET Reflector, October 2000.
// Copyright (C) 2000-2002 Lutz Roeder. All rights reserved.
// http://www.aisto.com/roeder/dotnet
// roeder (AT) aisto (DOT) com

namespace Reflector.Library
{
using System;
using System.IO;
using System.Runtime.InteropServices;
using System.Windows.Forms;

public class HtmlBrowser : AxHost, IWebBrowserEvents
{
public event BrowserNavigateEventHandler BeforeNavigate;
public event BrowserNavigateEventHandler NavigateComplete;
IWebBrowser control = null;
ConnectionPointCookie cookie;
Boolean activate = false;
String url = String.Empty;
String html = String.Empty;
String body = String.Empty;

public HtmlBrowser() : base("8856f961-340a-11d0-a96b-00c04fd705a2")
{
HandleCreated += new EventHandler(Me_HandleCreated);
NavigateComplete += new
BrowserNavigateEventHandler(Me_NavigateComplete);
}

public void Activate()
{
activate = true;
}

public void Navigate(string url)
{
if (!IsHandleCreated)
{
this.url = url;
return;
}

Object flags = 0;
Object targetFrame = String.Empty;
Object postData = String.Empty;
Object headers = String.Empty;
control.Navigate(url, ref flags, ref targetFrame, ref postData,
ref
headers);
}

public void SetHtmlText(string text)
{
this.html = text;
}

public void SetBodyText(string text)
{
if (control != null)
{
IHTMLDocument2 document = control.GetDocument();
if (document != null)
{
IHTMLElement body = document.GetBody();
if (body != null)
{
if (activate) DoVerb(-4);
body.SetInnerHTML(text);
return;
}
}
}

this.body = text;
}

void Me_HandleCreated(Object s, EventArgs e)
{
HandleCreated -= new EventHandler(Me_HandleCreated);

if (url == String.Empty)
{
url = Path.GetTempFileName();
StreamWriter writer = new StreamWriter(url, false);
writer.WriteLine(html);
writer.Flush();
writer.Close();
}

Navigate(url);
}

void Me_NavigateComplete(Object s, BrowserNavigateEventArgs e)
{
if (activate) DoVerb(-4);

if (html != String.Empty)
{
File.Delete(url);
this.html = String.Empty;
}

if (body != String.Empty)
{
SetBodyText(body);
this.body = String.Empty;
}
}

protected override void CreateSink()
{
try { cookie = new ConnectionPointCookie(GetOcx(), this,
typeof(IWebBrowserEvents)); } catch { }
}

protected override void DetachSink()
{
try { cookie.Disconnect(); } catch { }
}

protected override void AttachInterfaces()
{
try { control = (IWebBrowser) GetOcx(); } catch { }
}

protected override Boolean IsInputKey(Keys keyData)
{
return (keyData == Keys.Escape) ? false :
base.IsInputKey(keyData);
}

public void RaiseBeforeNavigate(String url, int flags, String
targetFrameName, ref Object postData, String headers, ref Boolean
cancel)
{
BrowserNavigateEventArgs e = new BrowserNavigateEventArgs(url,
false);
if (BeforeNavigate != null) BeforeNavigate(this, e);
cancel = e.Cancel;
}

public void RaiseNavigateComplete(String url)
{
BrowserNavigateEventArgs e = new BrowserNavigateEventArgs(url,
false);
if (NavigateComplete != null) NavigateComplete(this, e);
}
}

[Guid("eab22ac2-30c1-11cf-a7eb-0000c05bae0b"),
InterfaceType(ComInterfaceType.InterfaceIsIDispatc h)]
public interface IWebBrowserEvents
{
[DispId(100)]
void RaiseBeforeNavigate(String url, int flags, String
targetFrameName,
ref Object postData, String headers, ref Boolean cancel);
[DispId(101)]
void RaiseNavigateComplete(String url);
}

public delegate void BrowserNavigateEventHandler(Object s,
BrowserNavigateEventArgs e);

public class BrowserNavigateEventArgs
{
String url;
Boolean cancel;

public BrowserNavigateEventArgs(String url, Boolean cancel)
{
this.url = url;
this.cancel = cancel;
}

public String Url
{
get { return url; }
}

public Boolean Cancel
{
set { cancel = value; }
get { return cancel; }
}
}

[Guid("eab22ac1-30c1-11cf-a7eb-0000c05bae0b")]
interface IWebBrowser
{
void GoBack(); void GoForward(); void GoHome(); void GoSearch();
void Navigate(String Url, ref Object Flags, ref Object targetFrame,
ref
Object postData, ref Object headers);
void Refresh(); void Refresh2(); void Stop();
void GetApplication(); void GetParent(); void GetContainer();
[return: MarshalAs(UnmanagedType.Interface)]
IHTMLDocument2 GetDocument();
}

[Guid("332C4425-26CB-11D0-B483-00C04FD90119"),
InterfaceTypeAttribute(ComInterfaceType.InterfaceI sDual),
ComVisible(true)]
interface IHTMLDocument2
{
[return: MarshalAs(UnmanagedType.Interface)]
Object GetScript();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetAll();
[return: MarshalAs(UnmanagedType.Interface)]
IHTMLElement GetBody();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetActiveElement();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetImages();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetApplets();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetLinks();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetForms();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetAnchors();
void SetTitle([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetTitle();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetScripts();
void SetDesignMode([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetDesignMode();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetSelection();
[return: MarshalAs(UnmanagedType.BStr)]
String GetReadyState();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetFrames();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetEmbeds();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetPlugins();
void SetAlinkColor([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetAlinkColor();
void SetBgColor([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetBgColor();
void SetFgColor([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetFgColor();
void SetLinkColor([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetLinkColor();
void SetVlinkColor([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetVlinkColor();
[return: MarshalAs(UnmanagedType.BStr)]
String GetReferrer();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetLocation();
[return: MarshalAs(UnmanagedType.BStr)]
String GetLastModified();
void SetURL([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetURL();
void SetDomain([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetDomain();
void SetCookie([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetCookie();
void SetExpando([In, MarshalAs(UnmanagedType.Bool)] Boolean p);
[return: MarshalAs(UnmanagedType.Bool)] Boolean GetExpando();
void SetCharset([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetCharset();
void SetDefaultCharset([In, MarshalAs(UnmanagedType.BStr)] String
p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetDefaultCharset();
[return: MarshalAs(UnmanagedType.BStr)]
String GetMimeType();
[return: MarshalAs(UnmanagedType.BStr)]
String GetFileSize();
[return: MarshalAs(UnmanagedType.BStr)]
String GetFileCreatedDate();
[return: MarshalAs(UnmanagedType.BStr)]
String GetFileModifiedDate();
[return: MarshalAs(UnmanagedType.BStr)]
String GetFileUpdatedDate();
[return: MarshalAs(UnmanagedType.BStr)]
String GetSecurity();
[return: MarshalAs(UnmanagedType.BStr)]
String GetProtocol();
[return: MarshalAs(UnmanagedType.BStr)]
String GetNameProp();
void DummyWrite([In, MarshalAs(UnmanagedType.I4)] int psarray);
void DummyWriteln([In, MarshalAs(UnmanagedType.I4)] int psarray);
[return: MarshalAs(UnmanagedType.Interface)]
Object Open([In, MarshalAs(UnmanagedType.BStr)] String URL, [In,
MarshalAs(UnmanagedType.Struct)] Object name, [In,
MarshalAs(UnmanagedType.Struct)] Object features, [In,
MarshalAs(UnmanagedType.Struct)] Object replace);
void Close();
void Clear();
[return: MarshalAs(UnmanagedType.Bool)]
Boolean QueryCommandSupported([In, MarshalAs(UnmanagedType.BStr)]
String
cmdID);
[return: MarshalAs(UnmanagedType.Bool)]
Boolean QueryCommandEnabled([In, MarshalAs(UnmanagedType.BStr)]
String
cmdID);
[return: MarshalAs(UnmanagedType.Bool)]
Boolean QueryCommandState([In, MarshalAs(UnmanagedType.BStr)]
String
cmdID);
[return: MarshalAs(UnmanagedType.Bool)]
Boolean QueryCommandIndeterm([In, MarshalAs(UnmanagedType.BStr)]
String
cmdID);
[return: MarshalAs(UnmanagedType.BStr)]
String QueryCommandText([In, MarshalAs(UnmanagedType.BStr)] String
cmdID);
[return: MarshalAs(UnmanagedType.Struct)]
Object QueryCommandValue([In, MarshalAs(UnmanagedType.BStr)] String
cmdID);
[return: MarshalAs(UnmanagedType.Bool)]
Boolean ExecCommand([In, MarshalAs(UnmanagedType.BStr)] String
cmdID, [In,
MarshalAs(UnmanagedType.Bool)] Boolean showUI, [In,
MarshalAs(UnmanagedType.Struct)] Object value);
[return: MarshalAs(UnmanagedType.Bool)]
Boolean ExecCommandShowHelp([In, MarshalAs(UnmanagedType.BStr)]
String
cmdID);
[return: MarshalAs(UnmanagedType.Interface)]
Object CreateElement([In, MarshalAs(UnmanagedType.BStr)] String
eTag);
void SetOnhelp([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnhelp();
void SetOnclick([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnclick();
void SetOndblclick([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOndblclick();
void SetOnkeyup([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnkeyup();
void SetOnkeydown([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnkeydown();
void SetOnkeypress([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnkeypress();
void SetOnmouseup([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmouseup();
void SetOnmousedown([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmousedown();
void SetOnmousemove([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmousemove();
void SetOnmouseout([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmouseout();
void SetOnmouseover([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmouseover();
void SetOnreadystatechange([In, MarshalAs(UnmanagedType.Struct)]
Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnreadystatechange();
void SetOnafterupdate([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnafterupdate();
void SetOnrowexit([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnrowexit();
void SetOnrowenter([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnrowenter();
void SetOndragstart([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOndragstart();
void SetOnselectstart([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnselectstart();
[return: MarshalAs(UnmanagedType.Interface)]
Object ElementFromPoint([In, MarshalAs(UnmanagedType.I4)] int x,
[In,
MarshalAs(UnmanagedType.I4)] int y);
[return: MarshalAs(UnmanagedType.Interface)]
Object GetParentWindow(); // IHTMLWindow2
[return: MarshalAs(UnmanagedType.Interface)]
Object GetStyleSheets();
void SetOnbeforeupdate([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnbeforeupdate();
void SetOnerrorupdate([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnerrorupdate();
[return: MarshalAs(UnmanagedType.BStr)]
String toString();
[return: MarshalAs(UnmanagedType.Interface)]
Object CreateStyleSheet([In, MarshalAs(UnmanagedType.BStr)] String
bstrHref, [In, MarshalAs(UnmanagedType.I4)] int lIndex);
}

[Guid("3050F1FF-98B5-11CF-BB82-00AA00BDCE0B"),
InterfaceTypeAttribute(ComInterfaceType.InterfaceI sDual),
ComVisible(true)]
interface IHTMLElement
{
void SetAttribute([In, MarshalAs(UnmanagedType.BStr)] String
strAttributeName, [In, MarshalAs(UnmanagedType.Struct)] Object
AttributeValue, [In, MarshalAs(UnmanagedType.I4)] int lFlags);
void GetAttribute([In, MarshalAs(UnmanagedType.BStr)] String
strAttributeName, [In, MarshalAs(UnmanagedType.I4)] int lFlags, [Out,
MarshalAs(UnmanagedType.LPArray)] Object[] pvars);
[return: MarshalAs(UnmanagedType.Bool)]
Boolean RemoveAttribute([In, MarshalAs(UnmanagedType.BStr)] String
strAttributeName, [In, MarshalAs(UnmanagedType.I4)] int lFlags);
void SetClassName([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetClassName();
void SetId([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetId();
[return: MarshalAs(UnmanagedType.BStr)]
String GetTagName();
[return: MarshalAs(UnmanagedType.Interface)]
IHTMLElement GetParentElement();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetStyle(); // IHTMLStyle
void SetOnhelp([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnhelp();
void SetOnclick([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnclick();
void SetOndblclick([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOndblclick();
void SetOnkeydown([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnkeydown();
void SetOnkeyup([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnkeyup();
void SetOnkeypress([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnkeypress();
void SetOnmouseout([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmouseout();
void SetOnmouseover([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmouseover();
void SetOnmousemove([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmousemove();
void SetOnmousedown([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmousedown();
void SetOnmouseup([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnmouseup();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetDocument();
void SetTitle([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetTitle();
void SetLanguage([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetLanguage();
void SetOnselectstart([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnselectstart();
void ScrollIntoView([In, MarshalAs(UnmanagedType.Struct)] Object
varargStart);
[return: MarshalAs(UnmanagedType.Bool)]
Boolean Contains([In, MarshalAs(UnmanagedType.Interface)]
IHTMLElement
pChild);
[return: MarshalAs(UnmanagedType.I4)]
int GetSourceIndex();
[return: MarshalAs(UnmanagedType.Struct)]
Object GetRecordNumber();
void SetLang([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetLang();
[return: MarshalAs(UnmanagedType.I4)]
int GetOffsetLeft();
[return: MarshalAs(UnmanagedType.I4)]
int GetOffsetTop();
[return: MarshalAs(UnmanagedType.I4)]
int GetOffsetWidth();
[return: MarshalAs(UnmanagedType.I4)]
int GetOffsetHeight();
[return: MarshalAs(UnmanagedType.Interface)]
IHTMLElement GetOffsetParent();
void SetInnerHTML([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetInnerHTML();
void SetInnerText([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetInnerText();
void SetOuterHTML([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetOuterHTML();
void SetOuterText([In, MarshalAs(UnmanagedType.BStr)] String p);
[return: MarshalAs(UnmanagedType.BStr)]
String GetOuterText();
void InsertAdjacentHTML([In, MarshalAs(UnmanagedType.BStr)] String
where,
[In, MarshalAs(UnmanagedType.BStr)] String html);
void InsertAdjacentText([In, MarshalAs(UnmanagedType.BStr)] String
where,
[In, MarshalAs(UnmanagedType.BStr)] String text);
[return: MarshalAs(UnmanagedType.Interface)]
IHTMLElement GetParentTextEdit();
[return: MarshalAs(UnmanagedType.Bool)]
Boolean GetIsTextEdit();
void Click();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetFilters();
void SetOndragstart([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOndragstart();
[return: MarshalAs(UnmanagedType.BStr)]
String toString();
void SetOnbeforeupdate([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnbeforeupdate();
void SetOnafterupdate([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnafterupdate();
void SetOnerrorupdate([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnerrorupdate();
void SetOnrowexit([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnrowexit();
void SetOnrowenter([In, MarshalAs(UnmanagedType.Struct)] Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnrowenter();
void SetOndatasetchanged([In, MarshalAs(UnmanagedType.Struct)]
Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOndatasetchanged();
void SetOndataavailable([In, MarshalAs(UnmanagedType.Struct)]
Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOndataavailable();
void SetOndatasetcomplete([In, MarshalAs(UnmanagedType.Struct)]
Object p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOndatasetcomplete();
void SetOnfilterchange([In, MarshalAs(UnmanagedType.Struct)] Object
p);
[return: MarshalAs(UnmanagedType.Struct)]
Object GetOnfilterchange();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetChildren();
[return: MarshalAs(UnmanagedType.Interface)]
Object GetAll();
}
}


"Tom" <forget (AT) about (DOT) it> wrote in message
news:ukc6w8DpBHA.1336 (AT) tkmsftngp02 (DOT) ..
Greetings!

I need to render HTML as a view in my Windows Forms. can I do
this?
I'll
give you guys some background as to why I want to do this. I've got
a
distributed system with an "offline" client that has a local
database, and
an "online" server that is a receiving MSMQ server that processes
messages
and does inserts, deletes, updates, and so on against an underlying
database
(which only software-wise and structurally is a replica of the
central
online database). MSMQ is used to communicate with this online
database.
The
messages are sent to the MSMQ server
and then goes into processing by a receiver. Now, due to MSMQ being
asynchronous, and in part due to its message size limitation, I'm
putting
up
a Web Service that deals with ad-hoc SELECT-statements against the
central
database. So, I want to render an HTML view of the results from
this web
service inside my windows forms application. Hope Microsoft .NET
has the
tools and solutions for this HTML view, like their MFC has got with
the
CHtmlView class!


Thanks,

Tom





Reply With Quote
Reply




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.