Introduction
In this article I describe how to work with a class in a Windows Store app. In other words I bind the class. So let us understand the scenario.
Here I have added a class by right-clicking on the app name in Solution Explorer and create a class called employee and build it. Now add some controls to display the value to the class object.
So use the following procedure to create it.
Step 1
First of all you must create a new Windows Store Application.
- Open Visual Studio 2012
- "File" -> "New" -> "Project..."
- Choose "Template" -> "Visual C#" -> "Window Store app"
- Choose "Blank App (XAML)" then rename the application
Step 2
Now add a class by right-clicking on the name of the application in Solution Explorer and write the following simple code:
namespace binding_from_class
{
public class employee
{
public int id { get; set; }
public string name { get; set; }
public int salary { get; set; }
}
}
Step 3
Write the following XAML code in "Mainpage.Xaml" (that is available in Solution Explorer):
<Page
x:Class="binding_from_class.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:binding_from_class"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<Grid Background="Red">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="285*"/>
<ColumnDefinition Width="378*"/>
<ColumnDefinition Width="703*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="90*"/>
<RowDefinition Height="64*"/>
<RowDefinition Height="61*"/>
<RowDefinition Height="52*"/>
<RowDefinition Height="51*"/>
<RowDefinition Height="450*"/>
</Grid.RowDefinitions>
<TextBlock x:Name="text1" FontFamily="Arial" FontSize="20" FontWeight="ExtraBold" Grid.Column="1" Grid.Row="1" HorizontalAlignment="Center" VerticalAlignment="Top" Height="54" Margin="89,0" Width="200" Foreground="White" TextAlignment="Center" ></TextBlock>
<TextBlock x:Name="text2" FontFamily="Arial" FontSize="20" FontWeight="ExtraBold" Grid.Column="1" Grid.Row="2" HorizontalAlignment="Center" VerticalAlignment="Top" Height="51" Margin="38,0,10,0" Width="330" Foreground="White" TextAlignment="Center" ></TextBlock>
<TextBlock x:Name="text3" FontFamily="Arial" FontSize="20" FontWeight="ExtraBold" Grid.Column="1" Grid.Row="3" HorizontalAlignment="Center" VerticalAlignment="Top" Height="52" Margin="10,0" Width="358" Foreground="White" TextAlignment="Center" ></TextBlock>
<Button x:Name="button1" Background="Yellow" Foreground="Black" Grid.Column="1" Grid.Row="4" Content="Show" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="136,0,101,0" Width="141" Height="50" Click="button1_Click" ></Button>
</Grid>
</Page>
Step 4
Now write the following C# code for the button within "Mainpage.Xaml.cs".
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
namespace binding_from_class
{
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
}
employee emp = new employee();
private void button1_Click(object sender, RoutedEventArgs e)
{
emp.id = 12;
emp.name = "Satya";
emp.salary = 6000;
text1.Text = emp.id.ToString ();
text2.Text = emp.name;
text3.Text = emp.salary.ToString();
}
}
}
Step 5
Now run your app and click on the "Show" button.