实战 - WPF 窗口中展现网页

2017-05-29 19:54:08来源:CSDN作者:Veechange人点击

有需求

在WPF应用程序中,需要使用到WEB项目的资源,第一时间想到的就是在WPF窗口中,展现WEB项目中的页面,这样子有两点好处:一是,实现简单,不需要在WPF应用程序中实现UI布局和数据绑定;二是,灵活适应变化,需求有变化时,只需修改WEB项目,WPF项目不需要变动。事物都是两面的,有优点就有缺点,这样做的缺点是:没有充分利用WPF绚丽的界面风格。

具体实现

在WPF中展现WEB页面有多种实现方式,我选择最简单的一种:使用WPF自带的Frame控件。
1.UI代码:

//主窗口<Button x:Name="button1" Content="打开网页" HorizontalAlignment="Left" Margin="217,180,0,0" VerticalAlignment="Top" Width="75" Click="button1_Click"/>private void button1_Click(object sender, RoutedEventArgs e){    WebWindow webWin = new WebWindow();    webWin.Show();}//展现网页的窗口<Grid>    <!-- HorizontalAlignment="Stretch" VerticalAlignment="Stretch" 使Frame自适应父容器的大小。 -->    <Frame x:Name="frame" Content="Frame" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="10,10,0,0" /></Grid>

2.后台代码:

public WebWindow(){    InitializeComponent();    //Uri需要完整:即包含http或https    frame.Source = new Uri("https://www.baidu.com/");}

这样就可以像在浏览器中使用一样,在自己的WPF程序中访问百度。但是要想实现交互,仅是这样子还是不够的。

需要注意: Uri需要完整:即包含http或https,否则会报错:无效的 URI: 未能确定 URI 的格式。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台