在Windows Phone 中,咱們須要顯示HTML內容,首選解決方案是WebBrowser。可是WebBrowser中時常出現各類問題:亂碼、閃屏等等。css
WebBrowser的默認背景顏色是白色的,若是咱們想讓WebBrowser的背景顏色變成黑色,須要在要顯示HTML中添加css代碼html
body{web
background-color:black;ide
color:white;動畫
}spa
可是隨之而來遇到的一個問題就是會出現從白色背景到黑色背景的突變,致使的結果是屏幕會閃一下。本文的目的是解決這個問題,固然你們若是有更好的解決方案能夠跟我分享下。htm
方案一: 經過漸變更畫blog
咱們經過一個漸變的動畫,讓WebBrowser逐漸顯示。事件
private void FadingIn()
{
Storyboard storyboard = new Storyboard();圖片
DoubleAnimation animation = new DoubleAnimation();
animation.Duration = (Duration)TimeSpan.FromSeconds(0.5);
animation.BeginTime = TimeSpan.FromSeconds(0.2);
animation.From = 0.2;
animation.To = 1.0;
Storyboard.SetTargetProperty(animation, new PropertyPath("Opacity", new object[0]));
Storyboard.SetTarget(animation, webBrowser);
storyboard.Children.Add(animation);
storyboard.Begin();
}
在設置完webBrowser的Source或者調用webBrowser的Navigate方法以後就能夠調用FadingIn了。
效果還能夠,主要是看到的WebBrowser中的內容有一個漸變的動畫,我在Windows Phone糗事百科App中的查看大圖中就使用了這種方法。 (用WebBrowser顯示圖片是一個至關偷懶的方案)
方案2、 設置透明度
由上面的漸變更畫獲得的啓示,咱們能夠一開始將WebBrowser的Opacity設置爲0,而後在加載完成事件(LoadCompleted)中獎Opacity還原爲1.0 便可。 效果十分不錯。
若是您喜歡個人文章,您能夠經過支付寶對我進行捐助,您的支持是我最大的動力https://me.alipay.com/alexis
http://www.cnblogs.com/alexis/archive/2013/02/26/2933733.html