0


私のページには次のXAMLがあります。

<Grid x:Name="LayoutRoot">  
        <Viewbox Stretch="Uniform">  
        <Image x:Name="myImage" />  
    </Viewbox>  
    <WebBrowser x:Name="myBrowser"  />  
</Grid>

次に、コードビハインドで、画像とブラウザコンテンツの間で表示を切り替えています。

myBrowser.Visibility = Visibility.Collapsed;  
            myImage.Source = new BitmapImage(new Uri(p));  
            myImage.Visibility = Visibility.Visible;

myImage.Visibility = Visibility.Collapsed;  
            myBrowser.Source = new Uri(myPath + p, UriKind.Absolute);  
            myBrowser.Visibility = Visibility.Visible;

これは正常に機能しますが、クライアントが現在望んでいるのは、画像が表示されるときとブラウザが表示されるときの間のスムーズな移行です。私はいくつかのアプローチを試しましたが、常に行き詰まりに遭遇しました。あなたはなにか考えはありますか?

スワップが行われる前に、VSMを使用して2つの状態をオーバーレイとして上に表示するよりも、2つの状態を設定しようとしましたが、うまくいきませんでした(WebBrowserの上に何も配置できないためだと思いますか?) VSMを使用した画像コントロールとWebブラウザーコントロールの可視性ですが、どちらも機能しませんでした。この単純なタスクを解決するために他に何をしようとしているかは本当にわかりません。

どんな助けでも大歓迎です。

4

1 に答える 1

0

「スムーズな」トランジションを探している場合は、コントロールをフェードインおよびフェードアウトしてみてください。各オブジェクトの不透明度をアニメーション化します。たとえば、ViewBox の不透明度を 0 に設定し、画像の不透明度を 100 に設定します。次に、両方のオブジェクトの opacity プロパティをアニメーション化します。

最終結果は、あるオブジェクトから別のオブジェクトへのスムーズな移行になります。

開始するための MSDN の記事は次のとおりです:アニメーションの概要

于 2011-01-31T15:29:29.143 に答える