私は、hereのアプローチに従って、自分のアプリケーションのカスタマイズされたライブタイルの外観を生成しました。イメージファイルに "User Control"をレンダリングする
このアプローチの唯一の問題は、プログラムのセット全体をc#コードで構築する必要があることです。
私はアプリケーション(LiveTile.xaml)にユーザーコントロールを追加しようとしましたが、すべての四角形とTextBlocksを追加するのではなく、今回は同じアプローチを使用して、UserControlをインスタンス化し、ビットマップにレンダリングしました。
var tileUserControl = new MyLiveTile(); // this internally has a simple 50x50 red grid
bitmap.Render(tileUserControl, new TranslateTransform());
ただし、ビットマップイメージにレンダリングされたものは表示されません。画像は完全に黒くなっています(ユーザーコントロールの中に非常に単純なxamlがあっても)。
これはどのように達成できますか?私も.UpdateLayout().MEASURE()を呼び出す
- を試してみました何
。
- 呼び出す.Arrange();
- 呼び出し.InvalidateMeasure();
- 呼び出し.InvalidateArrange();
出力には効果がないようです。
ありがとうございました。
私はすでにinvalidate()呼び出しを持っていますが、.Loadedは起動していないようです。たぶん、ビジュアルツリーに最初に追加する必要があります。理由は何ですか? –
いいえ、まったく同じ問題があることをぼんやりと覚えています;-) –