需求
在WPF应用程序中,需要使用到WEB项目的资源,第一时间想到的就是在WPF窗口中,展现WEB项目中的页面,这样子有两点好处:一是,实现简单,不需要在WPF应用程序中实现UI布局和数据绑定;二是,灵活适应变化,需求有变化时,只需修改WEB项目,WPF项目不需要变动。事物都是两面的,有优点就有缺点,这样做的缺点是:没有充分利用WPF绚丽的界面风格。
实现
在WPF中展现WEB页面有多种实现方式,我选择最简单的一种:使用WPF自带的Frame控件。
1.主窗体://主窗口
//后台代码 private void button1_Click(object sender, RoutedEventArgs e){ WebWindow webWin = new WebWindow(); webWin.Show();}
2.展示窗体:
//展现网页的窗口
public WebWindow(){ InitializeComponent(); //Uri需要完整:即包含http或https frame.Source = new Uri("https://www.126.com/");}
这样就能在WPF中,像桌面程序一样访问我们的WEB网站,真是不学WPF也能搞定桌面程序的捷径。
注意:该WEB程序不能打开新的页面,否则就曝光了WEB程序德尔本质。