1

Windows 8 Metroスタイルのアプリケーションを開発していて、ベクター画像を使用したいと思います。svg画像は直接サポートされていないようですので、複数の形状(パスといくつかの線)で構成されるxamlフラグメントを画像として使用しようとしています。複合形状のリソースディクショナリエントリを作成し、それを別のページに含めることができるようにしたいと思います。理想的には、データバインドされたプロパティから特定の複合形状を解決できるようにもしたいと思います。

私が読んだところによると、WPFのアプローチは、VisualBrushまたはDrawingBrush形状で構成されることでしたが、Windows 8にはそのようなクラスはありません(そして、から派生することさえできないようですBrush)。

WinRT UIを使用してこれを行うにはどうすればよいですか?

4

3 に答える 3

1

いいえ、WinRT XAML で background プロパティの値として DrawingBrush を使用することはできません。ひどすぎますよね?ベクトル レイアウトでオブジェクトの塗りつぶしをセットアップするための非常に強力な機能のようです。実際、DrawingBrush はまだ Windows 8 の一部ではありません。それが現実さ。今のところ、画像は優れたソリューションです。しかし、私たちはあなたの痛みを感じています。

VisualBrush も WinRT-XAML の一部ではないことを忘れてはいけません。

于 2013-02-11T15:14:32.440 に答える
0

各 XAML フラグメントは、実際には UI 要素です。最も簡単な方法は、XAML を独自のユーザー コントロールに入れてから、「描画」を表示したい各ページにユーザー コントロールを追加することだと思います。ユーザー コントロールにさまざまな形状を表示する場合は、コントロールでプロパティを公開し、そのプロパティにデータ バインドし、プロパティのセッター内で値を読み取り、さまざまな XAML 形状の表示/非表示を切り替えて、表示または非表示にすることができます。必要な合成画像の部分。少し強引ですが、やりたいことはやってくれます。

于 2012-08-14T19:37:38.177 に答える
0

ベクター グラフィックスを含む Windows8 の方法は、ViewBox+Canvas および Path 要素を使用するだけです。VisualBrushが恋しいですが、私の意見ではうまく機能します。

于 2013-03-30T13:36:40.277 に答える