@dhq_boiler

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

【WPF】BlurEffectがかからない

この質問の背景

MosaicEffectというエフェクトを自作(いろいろなところからコードを拝借しながら)したのですが、特定の状況の時にモザイクエフェクトがかからなくて、この問題を検証しています。この問題の切り分けのために、MosaicEffectではなく、既存のSystem.Windows.Media.Effects.BlurEffectで試したところ、こちらでも正常に機能しないので、たぶん自分のやり方がどこか悪いのだと思います。

image.png

最小構成のソースコード

使用ライブラリ

  • Prism
  • ReactiveProperty
  • SharpDX (モザイク処理のコードコンパイル用)

解決したいこと

ViewModel(MainWindowViewModel.cs)から動的にImageオブジェクトを配置して、
さらにBlurEffectをかけたいのですが、うまくいきません。

具体的にいうと、ブラーがかからずオリジナルの状態で表示されます。

(UIでいうとGrid.Column=1, Grid.Row=3のボタン押下時)

一体、なにが足りないでしょうか。。。

発生している問題・エラー

image.png

該当するソースコード

自分で試したこと

なお、画像・コードで示している通り、XAMLによる定義と、コードビハインド(MainWindow.cs)からImageオブジェクトを配置する方法はうまくいきました。

以下の事項は判明しています。

  • ImageオブジェクトをViewのどこかのパネルにいれないといけない(おそらく親要素が必須である)
  • パネルに入れた後、image.UpdateLayout()を実行しないといけない

回答の程、どうそよろしくお願いいたします。

0 likes

No Answers yet.

Your answer might help someone💌