wpf PNG图形窗体 使用webbrowser控件

wpf ,PNG图形半透明窗体 ,使用webbrowser控件

附件:http://files.cnblogs.com/xe2011/WpfApplication1_webbrowser_transparent.rar

MainWindow1.XAML


<Window x:Name="MainWindow1" x:Class="WpfApplication1.MainWindow"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

Title="完美世界更新程序" Height="800" Width="984"

WindowStyle="None" WindowStartupLocation="CenterScreen"

Background="Transparent" OpacityMask="White" AllowsTransparency="True" Loaded="MainWindow1_Loaded" Closed="MainWindow1_Closed" LocationChanged="MainWindow1_LocationChanged"

>

<Grid>

<Image Name="image1" Stretch="Fill" Source="main-bg.png" StretchDirection="Both"  Width="984" Height="747" Margin="0,0,0,53" MouseDown="image1_MouseDown" />

<Button Content="--" HorizontalAlignment="Left" Margin="646.154,337.884,0,0" VerticalAlignment="Top" Width="50.769" Click="Button_Click_1"/>

<Button Content="X" HorizontalAlignment="Left" Margin="701.923,337.884,0,0" VerticalAlignment="Top" Width="51.154" Click="Button_Click"/>

<Button Content="dlg" HorizontalAlignment="Left" Margin="726.154,635.384,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click_2"/>

<Border x:Name="border1" BorderBrush="Black" BorderThickness="1" HorizontalAlignment="Left" Height="218.461" Margin="235.576,375.578,0,0" VerticalAlignment="Top" Width="516.155"/>

</Grid>
</Window>

MainWindow1.XAML.CS


using System;

using System.Collections.Generic;

using System.Text;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Data;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Imaging;

using System.Windows.Navigation;

using System.Windows.Shapes;

namespace WpfApplication1

{

/// <summary>

/// MainWindow.xaml 的交互逻辑

/// </summary>

public partial class MainWindow : Window

{

public MainWindow()

{

InitializeComponent();

}

Window1 window1 = new Window1();

private void InitialWindow1()

{

window1.WindowStyle = System.Windows.WindowStyle.None;

window1.WindowStartupLocation = System.Windows.WindowStartupLocation.CenterOwner;

window1.ResizeMode = System.Windows.ResizeMode.NoResize;

window1.ShowInTaskbar = false;

window1.webBrowser1.Navigate(new Uri("http://w2i.wanmei.com/launcher/index.htm"));

window1.Owner = this;

window1.Show();

}

//下面效果正确的前提 主窗体的 WindowStyle = System.Windows.WindowStyle.None;

private void MoveWindow1()

{

window1.Left = MainWindow1.Left + border1.Margin.Left;

window1.Top = MainWindow1.Top + border1.Margin.Top;

window1.Width = border1.Width;

window1.Height = border1.Height;

}

private void image1_MouseDown(object sender, MouseButtonEventArgs e)

{

DragMove();

}

private void Button_Click(object sender, RoutedEventArgs e)

{

Close();

}

private void Button_Click_1(object sender, RoutedEventArgs e)

{

MainWindow1.WindowState = System.Windows.WindowState.Minimized;

}

private void MainWindow1_Loaded(object sender, RoutedEventArgs e)

{

border1.Visibility = System.Windows.Visibility.Hidden;

InitialWindow1();

MoveWindow1();

}

private void MainWindow1_Closed(object sender, EventArgs e)

{

window1.Close();

}

private void MainWindow1_LocationChanged(object sender, EventArgs e)

{

MoveWindow1();

}

private void Button_Click_2(object sender, RoutedEventArgs e)

{

Window2 window2 = new Window2();

if (window2.ShowDialog() == true)

{

MessageBox.Show("U pressed Ok Button!");

}

}

}

}

window1.xaml


window1.xaml.cs


windows2.xaml


<Window x:Class="WpfApplication1.Window2"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

Title="Window2" Height="385" Width="515" AllowsTransparency="True"

Background="Transparent" OpacityMask="White" WindowStyle="None"

ResizeMode="NoResize" WindowStartupLocation="CenterScreen">

<Grid>

<Image Name="image1" Stretch="Fill" Source="video-bg.png" StretchDirection="Both" Width="515" Height="385" Margin="0,-2.308,0,2.307" MouseDown="image1_MouseDown" />

<Button Content="OK" HorizontalAlignment="Left" Margin="221,304.615,0,0" VerticalAlignment="Top" Width="75" IsDefault="True" Click="Button_Click"/>

<Button Content=" Cancel" HorizontalAlignment="Left" VerticalAlignment="Top" Width="75" Margin="307,304.615,0,0" IsCancel="True"/>

<Label Content="this ShowDialog Window" HorizontalAlignment="Left" Height="60" Margin="131,126.461,0,0" VerticalAlignment="Top" Width="193.846" Background="#FFEE0F0F"/>

</Grid>

</Window>

windows2.xaml.cs


using System;

using System.Collections.Generic;

using System.Text;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Data;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Imaging;

using System.Windows.Shapes;

namespace WpfApplication1

{

/// <summary>

/// Window2.xaml 的交互逻辑

/// </summary>

public partial class Window2 : Window

{

public Window2()

{

InitializeComponent();

}

private void Button_Click(object sender, RoutedEventArgs e)

{

this.DialogResult = true;

}

private void image1_MouseDown(object sender, MouseButtonEventArgs e)

{

DragMove();

}

}

}

来自为知笔记(Wiz)

wpf PNG图形窗体 使用webbrowser控件,布布扣,bubuko.com

时间: 2024-10-05 04:07:22

wpf PNG图形窗体 使用webbrowser控件的相关文章

WPF中不规则窗体与WindowsFormsHost控件的兼容问题完美解决方案

首先先得瑟一下,有关WPF中不规则窗体与WindowsFormsHost控件不兼容的问题,网上给出的解决方案不能满足所有的情况,是有特定条件的,比如  WPF中不规则窗体与WebBrowser控件的兼容问题解决办法.该网友的解决办法也是别出心裁的,为什么这样说呢,你下载了他的程序认真读一下就便知道,他的webBrowser控件的是单独放在一个Form中,让这个Form与WPF中的一个Bord控件进行关联,进行同步移动,但是在移动的时候会出现闪烁,并且还会出现运动的白点,用户体验肯定不好. OK,

WPF中嵌入WinForm中的webbrowser控件

原文:WPF中嵌入WinForm中的webbrowser控件 使用VS2008创建WPF应用程序,需使用webbrowser.从工具箱中添加WPF组件中的webbrowser发现其中有很多属性事件不能使用.决定还是使用WinForm中的webbrowser.要想在WPF中使用WinForm控件,查看MSDN,需经过以下步骤. 创建名为 HostingWfInWpf 的 WPF 应用程序项目. 在解决方案资源管理器中,添加一个对名为 WindowsFormsIntegration.dll 的 Wi

在WPF的WebBrowser控件中屏蔽脚本错误的提示

在WPF中使用WebBrowser控件显示网页时,经常会报脚本错误的提示,如何屏蔽掉这些错误提示呢.方法是定义如下方法: public void SuppressScriptErrors(WebBrowser wb, bool Hide) { FieldInfo fiComWebBrowser = typeof(WebBrowser).GetField("_axIWebBrowser2", BindingFlags.Instance | BindingFlags.NonPublic);

WPF 设置WebBrowser控件不弹脚本错误提示框

using System.Reflection; using System.Windows; using System.Windows.Controls; using System.Windows.Navigation; namespace HC { /// <summary> /// MainWindow.xaml 的交互逻辑 /// </summary> public partial class MainWindow : Window { public MainWindow()

C# WebBrowser控件使用整理

一.简介 WebBrowser 控件为 WebBrowser ActiveX 控件提供了托管包装. 托管包装使您可以在 Windows 窗体客户端应用程序中显示网页. 使用WebBrowser 控件,可以复制应用程序中的 Internet Explorer Web 浏览功能,还可以禁用默认的 Internet Explorer 功能,并将该控件用作简单的 HTML 文档查看器. 此外,可以使用该控件将基于 DHTML 的用户界面元素添加到窗体中,还可以隐瞒这些元素在 WebBrowser 控件中

WPF布局之让你的控件随着窗口等比放大缩小,适应多分辨率满屏填充应用

一直以来,我们设计windows应用程序,都是将控件的尺寸定好,无论窗体大小怎么变,都不会改变,这样的设计对于一般的应用程序来说是没有问题的,但是对于一些比较特殊的应用,比如有背景图片的,需要铺面整个屏幕,由于存在多种不同的分辨率,所以会出现布局混乱的情况.今天我们来看看WPF中如何让我们的控件也随着分辨率放大缩小.下面来写一个例子看看效果吧~  一.普通布局中的问题 这里我们写一个简单的页面,新建WPF项目,在MainWindow里面添加按钮,如下图: 这个页面很简单,只有三个按钮,我们想的是

通过WebBrowser控件,实现IE浏览器菜单功能

这篇文章所讲的技术,只支持IE浏览器,请读者注意 WebBrowser控件,是IE浏览器的内置控件.顾名思义,这个控件我们可以看成是浏览器本身.通过WebBrowser控件,可以实现一部分IE浏览器的菜单命令. 1. 使用 首先在画面上要通过<object>标签创建这个控件. <OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>

WebBrowser控件使用详解

WebBrowser控件使用详解 方法 说明 GoBack 相当于IE的“后退”按钮,使你在当前历史列表中后退一项 GoForward 相当于IE的“前进”按钮,使你在当前历史列表中前进一项 GoHome 相当于IE的“主页”按钮,连接用户默认的主页 GoSearch 相当于IE的“搜索”按钮,连接用户默认的搜索页面 Navigate 连接到指定的URL Refresh 刷新当前页面 Refresh2 同上,只是可以指定刷新级别,所指定的刷新级别的值来自RefreshConstants枚举表, 

VC窗体透明而控件不透明以及Static文本背景透明方法

出自http://my.oschina.net/ypimgt/blog/60951 优点:    1.Dialog 窗体完全透明.     2. 窗体上的控件不透明. DC 绘制的图形不透明.     3. 拖动窗体上用 DC 绘制的图形可以移动窗体. 缺点:     1. 窗体设置透明使用是掩码颜色,所以在窗体上用 DC 绘图的过程当中如果采用了和透明掩码颜色相同的颜色将不会显示出来.     2. 如果将 Border 属性设置成了 NONE ,那么想通过响应 WM_NCHITEST 消息来