Silverlight嵌入HTML网页,不开启 windowless=true 模式
程序员文章站
2022-04-06 10:14:42
目前工作中用到SilverLight,有必要对其作一定的了解。 目前工作中用到SilverLight,有必要对其作一定的了解。 ......
目前工作中用到SilverLight,有必要对其作一定的了解。
1.LayoutRoot_Loaded 和 OnPageLoad
<Grid x:Name="LayoutRoot" Loaded="LayoutRoot_Loaded"> // 支持页面刷新 private void LayoutRoot_Loaded(object sender, RoutedEventArgs e) { } // 页面加载 public override void OnPageLoad() { base.OnPageLoad(); }
第一次进入页面时,先执行 LayoutRoot_Loaded 方法,再执行 OnPageLoad 方法。当从下一页返回该页面时,页面刷新,只会执行 LayoutRoot_Loaded 方法。
2.OnNavigatedTo 和 OnNavigatedFrom
3.首次加载页面,主动让某个文本框获取焦点
using System.Windows.Browser; private void LayoutRoot_Loaded(object sender, RoutedEventArgs e) { HtmlPage.Plugin.Invoke("focus"); txtName.Focus(); }
4.绑定模式
[1].OneTime:一次绑定,在绑定创建时使用源数据更新目标,适用于只显示数据而不进行数据的更新。 [2].OneWay:单向绑定,在绑定创建时或者源数据发生变化时更新到目标,适用于显示变化的数据。 [3].TwoWay:双向绑定,在任何时候都可以同时更新源数据和目标。
5.在Silverlight中内嵌html网页
[1]. 采用 实现, <param name="windowless" value="true" /> ,会出现TextBox无法输入中文的问题。
待议方法:;
[2]. WillisHtml.dll,采用博主提供的特殊控件
// .XAML的UserControl xmlns:willishtml="clr-namespace:Willis;assembly=WillisHtml" // 在Grid中 <willishtml:WillisHtml x:Name="willishtml" HtmlControlLeft="0" HtmlControlTop="0" NavigationUrl="http://www.cnblogs.com/waren168"></willishtml:WillisHtml> // 在.xaml.cs中 using Willis;
详细参见:;
6.Silverlight 通信 Html
上一篇: WCF 创建WCF
下一篇: Nginx配置多端口多域名访问的实现