DataGrid in WPF:

How to bind records in DataGrid using WPF?

MainWindow.xaml:

<Window x:Class="DataGridInWPF.MainWindow"

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

Title="MainWindow" Height="250" Width="550" Loaded="Window_Loaded">

<Grid>

<DataGrid HorizontalAlignment="Center" Name="dataGrid1"

AutoGenerateColumns="False"

CanUserResizeRows="True"

CanUserResizeColumns="True"

CanUserReorderColumns="True">

<DataGrid.Columns>

<DataGridTextColumn Binding="{Binding Path=CustomerID}" Header="ID" MaxWidth="50" />

<DataGridTextColumn Binding="{Binding Path=CompanyName}" Header="Company" MaxWidth="100" />

<DataGridTextColumn Binding="{Binding Path=ContactName}" Header="Name" MaxWidth="100" />

<DataGridTextColumn Binding="{Binding Path=City}" Header="City" MaxWidth="100" />

<DataGridTextColumn Binding="{Binding Path=Country}" Header="Country" MaxWidth="100" />

<DataGridTextColumn Binding="{Binding Path=Phone}" Header="Phone" MaxWidth="100" />

</DataGrid.Columns>

</DataGrid>

</Grid>

</Window>

DataGrid.png

Figure 1: Display DatGrid in design format.

MainWindow.xaml.cs:

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Windows;

using System.Windows.Controls;

using System.Windows.Data;

using System.Windows.Documents;

using System.Windows.Input;

using System.Windows.Media;

using System.Windows.Media.Imaging;

using System.Windows.Navigation;

using System.Windows.Shapes;

using System.Data;

using System.Data.SqlClient;

namespace DataGridInWPF

{

/// <summary>

/// Interaction logic for MainWindow.xaml

/// </summary>

public partial class MainWindow : Window

{

SqlConnection MyConnection;

SqlCommand MyCommand;

SqlDataAdapter MyAdapter;

DataTable MyTable;

public MainWindow()

{

InitializeComponent();

}

private void Window_Loaded(object sender, RoutedEventArgs e)

{

BindGrid();

}

private void BindGrid()

{

MyConnection = new SqlConnection();

MyConnection.ConnectionString = "SERVER=Puru;Uid=sa; pwd=wintellect;Database=TestData;";

if (MyConnection.State == ConnectionState.Closed)

MyConnection.Open();

MyCommand = new SqlCommand();

MyCommand.CommandText = "Select CustomerID,CompanyName,ContactName,Country,City,Phone from CustomerDetail";

MyCommand.CommandType = CommandType.Text;

MyCommand.Connection = MyConnection;

MyTable = new DataTable();

MyAdapter = new SqlDataAdapter();

MyAdapter.SelectCommand = MyCommand;

MyAdapter.Fill(MyTable);

dataGrid1.ItemsSource = MyTable.DefaultView;

}

}

}