WebBrowser控件能打开html页,实现IE功能,我现在想做这样一个东东,就是象frontpage一样可以随意拖放控件图形并同时自动生成html页。请问WebBrowser可以么,不行的话该用什么实现呢?请高手不吝赐教,谢谢

解决方案 »

  1.   

    WebBrowser做不了这样的功能,你可以参考一下SharpDevelop的窗体设计器的原代码基本原理是一样的
      

  2.   

    就是webbrowser连vs.net的网页设计器都是用这个做的
      

  3.   

    楼上的winrar,能给讲具体点么,最好给我个例子,急着做东西但是实在是没有头绪下不去手,谢谢
      

  4.   

    WebBrowser只相当于frontpage里“浏览”这个功能而已,楼主你想实现的功能是页面编辑器吗?这可不简单了,你可以搜索一下这方面的控件。或者参考一下HTML在线编辑器之类,还有FreeTextBox
      

  5.   

    我想做的是网页图形编辑器,现有的网页编辑器都是侧重文本编辑,而我想做的重点是对图形的编辑,并且能够插自定义的控件,类似frontpage的功能,看了FreeTextBox,还差一点对控件的支持,该怎么解决啊,大虾们
      

  6.   

    想做网页图形编辑器,
    就得研究研究VML了,
    不访看看这个:
    VML中文手册
    http://www.infowe.com/vml/VML技术文章
    http://www.xmlasp.net/c19.aspx
      

  7.   

    可以的。我觉得并不需要 VML 这么高深的东西
    你需要学习 IHTMLDocument2 和 IHTMLWindow2 接口
    其中 IHTMLDocument2 接口中有个很有用的属性就是 designMode
    把 designMode 设为 on 就可以随意编辑网页里的内容了
    你可以去 msdn 查查 IHTMLDocument2 和 IHTMLWindow2 两个接口的用法
      

  8.   

    还要说一点,我不是要做在线的编辑,就是在本机上编辑好图形然后自动生成html代码,再放在服务器上让人浏览就行了,楼上两位给我推荐的是这样的么,看了一下好象都很深的样子,有没有简单的代码推荐一下,入门快些,多谢多谢
      

  9.   

    我已经按照我的想法为楼主做了一个:
    http://www.gwnews.net/autoform/UploadFiles_user/9029520060305011826.rar
    楼主可以参考一下
      

  10.   

    哦,那还有一个问题,我在编辑的时候发现Enter键不好用,就是不起作用,并没有换行,用代码跟踪的时候发现一按Enter,就进到button1(开始编辑)里去了,这是怎么回事啊,麻烦您再给看看
      

  11.   

    是一些细节问题,已经改正:
    http://www.gwnews.net/autoform/UploadFiles_user/60805820060307195205.rar就是在文档加载完成和按下“开始编辑”按钮的时候把焦点设置到 axWebBrowser 就OK了
      

  12.   

    十分感谢,可是我要怎样才能把控件加进去呢,我的想法是在它的html代码中直接加代码,这要用到什么属性,有了这个我觉得就差不多了
      

  13.   

    http://msdn.microsoft.com/library/en-us/dnmshtml/html/mshtmleditplatf.asp
      

  14.   

    楼上的文章讲的正是我说的方法
    要在html中插入代码要用到IHTMLSelectionObject 
    接口:
    http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/mshtml/reference/ifaces/selectionobject/selectionobject.asp
    IHTMLSelectionObject类的createrange 方法和TextRange类的pasteHTML方法是重点。我在javascript下用过一下,但在win32程序中就没研究过。楼主可以试试
      

  15.   

    有一个奇怪的问题,我用pasteHTML时,有的自制控件可以显示,有的不能显示,不能显示时document.body.innerText里却有这个控件的html代码,并且单独用浏览器看时就能显示出来,这是怎么回事啊,有没有对页面进行刷新的方法和属性啊,谢谢