Difference between Label and TextBlock

Rami Shareef picture Rami Shareef · Mar 21, 2011 · Viewed 69.5k times · Source

According to the Windows Applications Development with Microsoft .NET 4 70-511 Training Kit

What is the difference between the Label control and TextBlock control since both are content controls and just displaying text?

Answer

biju picture biju · Mar 22, 2011

TextBlock is not a control

Even though TextBlock lives in the System.Windows.Controls namespace, it is not a control. It derives directly from FrameworkElement. Label, on the other hand, derives from ContentControl. This means that Label can:

  1. Be given a custom control template (via the Template property).
  2. Display data other than just a string (via the Content property).
  3. Apply a DataTemplate to its content (via the ContentTemplate property).
  4. Do whatever else a ContentControl can do that a FrameworkElement cannot.

    • Label text is grayed out when disabled
    • Label supports access keys
    • Label is much heavier than TextBlock

Source

Some more interesting reads below