Label. A Label displays text. We can dynamically change the Content of a Label. The Label_Loaded event handler allows to changes its attributes at WPF program startup.
Getting started. First, please create a new WPF project, and drag a Label to the designer window. Next change the markup of the XAML file—this is where the controls are specified.
Label example. Here we create the Label_Loaded event. Please type "Label" into the XAML file and then have Visual Studio auto-generate the C# event handler.
Info In Label_Loaded, we assign the Content of the Label to a string. We cast the argument "sender" to the Label type.
Note We change the HorizontalAlignment of the Label to be Stretch—this makes the label expand its width.
Note 2 We use the exciting color Beige as the background (back color) of the Label control.
<Window x:Class="WpfApplication4.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Label
Content="Label"
HorizontalAlignment="Stretch"
Margin="10,10,10,10"
VerticalAlignment="Center"
Background="Beige"
Padding="5"
FontSize="30"
Loaded="Label_Loaded"/>
</Grid>
</Window>using System;
using System.Windows;
using System.Windows.Controls;
namespace WpfApplication4
{
/// <summary>/// Interaction logic for MainWindow.xaml/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Label_Loaded(object sender, RoutedEventArgs e)
{
// ... Get label.
var label = sender as Label;
// ... Set date in content.
label.Content = DateTime.Now.ToShortDateString();
}
}
}
Loaded. Why do we use the Label_Loaded event handler to assign a value to the Label? A static (constant) label can be assigned directly within the XAML.
But For a dynamic label, one that depends on external factors, we require C# code.
And The Label_Loaded event handler provides a convenient way to access the Label at program startup, and modify its Content.
TextBlock, Label. What is the difference between the TextBlock element and the Label element? The TextBlock element by default has attributes for longer text.
And TextBlock provides the TextWrapping attribute. Label has no TextWrapping attribute.
So The TextBlock is for a larger "block" of text. The Label is for a shorter, "labeling" piece of text.
Summary. In a WPF program, the need to use visual, text labels on controls is common. We used the Label control and its Label_Loaded event.
Dot Net Perls is a collection of tested code examples. Pages are continually updated to stay current, with code correctness a top priority.
Sam Allen is passionate about computer languages. In the past, his work has been recommended by Apple and Microsoft and he has studied computers at a selective university in the United States.