The user interface (UI) is the visual representation of your application.
A well UI design that flows logically can provide a consistent user experience from application to application and make learning new applications easy for users.
Windows Forms historically has been the basis for most Microsoft Windows applications and can be configured to provide a variety of user interface options.
WPF is the successor to Windows Forms for desktop application development. WPF applications differ from traditional Windows Forms applications in several ways, the most important is that the code for the user interface is separate from the code for application functionality.
Windows Presentation Foundation (WPF) is a next-generation presentation system for building Windows client applications with visually stunning user experiences.
The core of WPF is a resolution-independent and vector-based rendering engine that is built to take advantage of modern graphics hardware. WPF extends the core with a comprehensive set of application-development features that include Extensible Application Markup Language (XAML), controls, data binding, layout3-D graphics, animation, media, text, etc.
WPF individual controls
These controls have a single purpose in an application; buttons are clicked, text boxes receive and display text, etc.
WPF items controls
Are designed to contain groups of related items: Menu, ListBox, TreeView.
WPF Layout controls
Contain multiple nested controls of any type and provide built-in logic for the visual layout of those controls: Grid, StackPanel, Canvas
WPF Content Controls
A ontent control derives from the ContentControl class and can contain a single nested element.
This nested element can be of any type and can be set or retrieved in code through theContent
property.
Create Microsoft Windows Applications with WPF (C#)
Start Microsoft Visual Studio and from Menu->File select WPF Application
For an empty application the XAML contains:
<Window x:Class="WpfApplication1.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>
</Grid>
</Window>
Grid defines a flexible grid area that consists of columns and rows.
Label and TextBox control
Label It is container for content
<Window x:Class="WpfApplication1.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 Name="label1">Label control</Label>
</Grid>
</Window>
Press F5, result is:
Labels containsupport for mnemonic keys when the Alt key is pressed with the mnemonic key.
The mnemonic key is specified by preceding the desired key with the underscore (_) symbol
<Window x:Class="WpfApplication1.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="_Code" Target="{Binding ElementName=TextBox1}"></Label>
<TextBox Name="TextBox1" Margin="65,1,94,287"> </TextBox>
</Grid>
</Window>
Next: ButtonControl