1. ホーム
  2. wpf

[解決済み] LabelとTextBlockの違い

2022-02-09 16:37:55

質問

によると Microsoft .NET 4によるWindowsアプリケーション開発 70-511 トレーニングキット

とはどのような違いがあるのでしょうか? Label コントロールと TextBlock というのは、どちらもコンテンツコントロールであり、テキストを表示するだけだからです。

解決方法は?

TextBlockはコントロールではありません。

にもかかわらず TextBlock は System.Windows.Controls ネームスペースに属していますが、コントロールではありません。 これは、直接 FrameworkElement . 一方、ラベルは ContentControl . これは、以下のことを意味します。 Label ができる。

  1. カスタム・コントロール・テンプレートが与えられる ( Template プロパティ)を使用します。
  2. 文字列以外のデータを表示する( Content プロパティ)を追加しました。
  3. を適用する。 DataTemplate をそのコンテンツに追加します (via. ContentTemplate プロパティ)を使用します。
  4. その他の ContentControl ができることは FrameworkElement はできません。

    • Label 無効の場合、テキストはグレーで表示されます
    • Label アクセスキーに対応
    • Label よりもはるかに重くなります。 TextBlock

ソース

以下、興味深い記事をいくつかご紹介します。