1

C#/WPF から C#/MetroUI 開発に切り替えて、XAML には多くの違いがあることに気付きました。たとえば、MetroUI では、TextBlock に background プロパティがありません。または、私が愚かすぎて使用できません。では、そのようなプロパティがない場合、TextBlock のそのようなスタイルをどのように実現するのでしょうか?

青い背景に白いテキストを表示したいのですが、背景は段落に従わなければなりません。このシナリオを実現するための TextBlocks または同様のコントロールの ItemTemplate のようなものはありますか?

ここに画像の説明を入力

4

2 に答える 2

1

それらは実際にテキストブロックである必要がありますか?ドキュメントでWindows.UI.Xamlを検索しましたが、backgroundプロパティはControlクラスから継承するオブジェクトでのみ使用できるようです。TextblockはFrameworkElementから継承します。

もし私があなたなら、TextBoxスタイルを変更して、すでにWPFの経験があるので、テキストブロックのように見せます。これは、スタイルを設定してその動作を実現するのに比較的簡単なはずです。

詳細については、実際のドキュメント(TextBlockクラスおよびTextBoxクラス)を参照してください。

WinRTのBackgroundプロパティがどこにあるかを探していたので、そこから比較しました。お役に立てれば!

于 2012-08-03T21:32:47.780 に答える
0

TextBlocks を Border の内側に配置するか、塗りつぶされた Rectangles を TextBlocks の後ろに配置して、少し遊ぶ必要があると思います-TextBlocks のスタックに改行を配置する場所を見つけた後。Silverlight のような WinRT XAML には、このような高度な書式設定を自動的に行うのに役立つ API がかなり限られています。

于 2012-07-21T21:08:51.363 に答える