WPF中嵌入WinForm中的webbrowser控件

原文:WPF中嵌入WinForm中的webbrowser控件

使用VS2008创建WPF应用程序,需使用webbrowser。从工具箱中添加WPF组件中的webbrowser发现其中有很多属性事件不能使用。决定还是使用WinForm中的webbrowser。要想在WPF中使用WinForm控件,查看MSDN,需经过以下步骤。

  1. 创建名为 HostingWfInWpf 的 WPF 应用程序项目。
  2. 在解决方案资源管理器中,添加一个对名为 WindowsFormsIntegration.dll 的 WindowsFormsIntegration 程序集的引用。
  3. 在解决方案资源管理器中,添加一个对名为 System.Windows.Forms.dll 的 Windows 窗体程序集的引用。
  4. 在 WPF 设计器中打开 Window1.xaml。
  5. 用以下 XAML 替换 Window1.xaml 中自动生成的 XAML。

<Window x:Class="HostingWfInWpf.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="HostingWfInWpf"
 Loaded="WindowLoaded"
    >
    <Grid Name="grid1">

    </Grid>
</Window>
6.在代码编辑器中打开 Window1.xaml.cs。
7.将 Window1.xaml.cs 中的代码替换为以下代码。

 

using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Media;
using System.Windows.Shapes;

using System.Windows.Forms;

namespace HostingWfInWpf
{  
    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();
        }

        private void WindowLoaded(object sender, RoutedEventArgs e)
        {
            // Create the interop host control.
            System.Windows.Forms.Integration.WindowsFormsHost host =
                new System.Windows.Forms.Integration.WindowsFormsHost();

            // Create the MaskedTextBox control.
            MaskedTextBox mtbDate = new MaskedTextBox("00/00/0000");

            // Assign the MaskedTextBox control as the host control's child.
            host.Child = mtbDate;

            // Add the interop host control to the Grid
            // control's collection of child controls.
            this.grid1.Children.Add(host);
        }
    }
}

此处,将MaskedTextBox换成System.Windows.Forms.WebBrowser即可。

时间: 2024-10-29 01:48:00

WPF中嵌入WinForm中的webbrowser控件的相关文章

c#中如何在form的webbrowser控件中获得鼠标坐标

以下是对c#中如何在form的webbrowser控件中获得鼠标坐标的实现方法进行了详细的分析介绍,需要的朋友可以参考下   如图这样,其实是要插入一个time的控件,这样才能使得坐标值会根据鼠标的移动而不停变化.time插件中写 复制代码 代码如下: private void timer1_Tick(object sender, EventArgs e)         {             if (webBrowser1.Bounds.Contains(this.PointToClie

有关webBrowser控件的使用

问题描述 webBrowser1.Document.GetElementsByTagName("input")["LoginId"].InnerText="xxxxxx";webBrowser1.Document.GetElementsByTagName("input")["password"].InnerText="xxxxx";webBrowser1.Document.Forms[0

wpf 中使用winform 的webbrowser 控件隐藏问题

问题描述 因为的窗体要托盘用webbrowser.visble属性隐藏后还有一块空白留在浏览器上面恳求求大神帮忙谢谢了 解决方案 解决方案二:建议别用winform的东西效果差解决方案三:wpf里面webbrowser控件更差的需要做透明窗体webbrowser不兼容解决方案四:"webbrowser.visble属性隐藏"是什么意思?不懂这是干什么用的.解决方案五:话说我们以前做一个IM,结果怎么别自己骗了?竟然用桌面程序里边放一个webbrowser,然后用asp.net的程序做I

一个关于WinForm中WebBrowser控件的问题?

问题描述 Hi,大家好!我需要在WebBrowser控件中加载一张网页,但是WebBrowser控件会把整个网页全都显示出来,可是我只想显示网页中数据表的内容,这该如何做? 解决方案 解决方案二:不是完全是你要的问题,希望也能有点小帮助ivanx著于2007-8-168:07:09本文的目的是想在WindowsForm中加载虚拟地球的地图.因为,你可以轻易地在HTML页面上加载这些地图,所以我会使用WebBrowser控件.但是如何在WinForm上控制...解决方案三:只能通过解析HTML元素

在WINFORM中,有webBrowser控件和HtmlDocument对象,那么ASP.NET里呢?

问题描述 小弟在WINFORM中,使用webBrowser请求某一网页,然后返回HTML代码,再用HtmlDocument对象提取出HTML代码中的需要的东西,现在要使用ASP.NET实现,请问有类似于这两种控件吗?1:webBrowser控件,不一定要可以看到页面,只要输入一个网址,既能请求并且获取到该网页中的HTML代码.2:HtmlDocument对象,可以用这个对象可以简单找到HTML代码中的元素上面两个东西,请问在ASP.NET里有没有什么可以实现的方法,谢谢大家! 解决方案 解决方案

在WPF的WebBrowser控件中抑制脚本错误

原文:在WPF的WebBrowser控件中抑制脚本错误 今天用WPF的WebBrowser控件的时候,发现其竟然没有ScriptErrorsSuppressed属性,导致其到处乱弹脚本错误的对话框,在MSDN上找到了如下解决方案:  1 static void SuppressScriptErrors(WebBrowser webBrowser, bool hide) 2 { 3     webBrowser.Navigating += (s, e) => 4         { 5      

C/S模式开发中如何利用WebBrowser控件制作导航窗体

原文:C/S模式开发中如何利用WebBrowser控件制作导航窗体 转自: CSDN 相信不少同学们都做过MIS系统的开发,今天这里不讨论B/S模式开发的问题.来谈谈winform开发.用过市面上常见进销存系统的同学肯定知道,在进入系统之后一般在mdi窗体中系统自动打开一个导航子窗体.将一些常见的功能以非常直观的图形展示给用户.观察市面上的此类产品,该功能基本是所有mdi窗体开发的管理系统中必备的功能窗体.下面我们就来分析一下如何在.net中实现这个功能.幸好我上次做了一个类似的系统,里面也用到

在MFC应用中深入定制WebBrowser控件(转)

web|webbrowser控件 正如VC ++ 6.0的演示程序MFCIE所示,用应用程序向导创建一个具有Web导航能力的MFC应用可谓轻而易举.本文在此基础上,进一步讨论两个问题:资源自包含的实现,上下文菜单以及快捷键的完全控制. 一.资源自包含及res协议 所谓的资源自包含,指的是在最终产品中HTML文档(包括相关资源如脚本.图片)成为执行文件的一部分,就象其它资源(如应用程序图标)一样,而不是以独立文件形式分发. 资源自包含不仅使产品分发更为方便,而且在最终用户面前隐藏了更多的实现细节,

在VB中使用IE的 WebBrowser控件改进界面设计

web|webbrowser控件|设计 在VB中使用IE的 WebBrowser控件 改进界面设计 在程序设计中,如何设计出美观.实用,有个性的界面是每个程序设计者在界面设计中追求的目标.随着Windows XP的推出,各种与众不同的华丽界面越来越被程序设计者和软件使用者所认同. 利用Windows中的WebBrowser控件,可以把华丽的网页设计技术应用到界面设计中去,例如微软著名的MSN浏览器的许多界面其实就是一个Web页,Windows XP中的帮助中心.Microsoft Encarta