Silverlight 학습 노트 3: 테이블 컨트롤 DataGrid

테이블의 데이터를 바인딩하는 백그라운드 코드 작성:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace SilverlightApplication4
{
    public partial class MainPage : UserControl
    {
        public class Person//   
        {
            string name;

            public string Name
            {
                get { return name; }
                set { name = value; }
            }
            int age;

            public int Age
            {
                get { return age; }
                set { age = value; }
            }
            bool isMan;

            public bool IsMan
            {
                get { return isMan; }
                set { isMan = value; }
            }
        }

        public MainPage()//     
        {
            InitializeComponent();

            List<Person> itemList = new List<Person>();
            itemList.Add(new Person { Name = "  ", Age = 45, IsMan = true });
            itemList.Add(new Person { Name = "  ", Age = 3, IsMan = false });
            itemList.Add(new Person { Name = "  ", Age = 12, IsMan = false });
            itemList.Add(new Person { Name = "  ", Age = 32, IsMan = true });
            itemList.Add(new Person { Name = "Gaga", Age = 56, IsMan = true });
            itemList.Add(new Person { Name = "  ", Age = 33, IsMan = false });
            itemList.Add(new Person { Name = "lfy", Age = 22, IsMan = true });
            itemList.Add(new Person { Name = "lili", Age = 34, IsMan = true });
            itemList.Add(new Person { Name = "  ", Age = 12, IsMan = false });

            dataGrid1.ItemsSource = itemList;
        }
    }
}

프론트 데스크톱 양식 작성:
<UserControl x:Class="SilverlightApplication4.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d"
    d:DesignHeight="300" d:DesignWidth="400" xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk">

    <Grid x:Name="LayoutRoot" Background="White">
        
        
        <sdk:DataGrid AutoGenerateColumns="False" Height="209" HorizontalAlignment="Left" Margin="12,12,0,0" Name="dataGrid1" VerticalAlignment="Top" Width="376">
            //     
            <sdk:DataGrid.Columns>
                <sdk:DataGridTemplateColumn Header="  ">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                         <TextBlock Text="{Binding Name}"/>   
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                </sdk:DataGridTemplateColumn>
            </sdk:DataGrid.Columns>
            
            //        
            <sdk:DataGrid.RowDetailsTemplate>
                <DataTemplate>
                    <StackPanel>
                        <TextBlock Text="{Binding Age}"/>
                        <TextBlock Text="{Binding IsMan}"/>
                    </StackPanel>
                </DataTemplate>
            </sdk:DataGrid.RowDetailsTemplate>
            
            
        </sdk:DataGrid>
        
    </Grid>
</UserControl>

좋은 웹페이지 즐겨찾기