데이터그리드를 테스트해보기 위해 간단한 테스트 코드를 작성해보았다.

목표는 구글 스프레드시트와 연동하는것.

구글 api도 연동해야 하고 해야할 것은 많지만, 한걸음씩 :)

 

프로젝트 환경

  • Visual Studio 2022
  • WPF 애플리케이션
  • 프로젝트이름 : DataGridWPF_231117
  • 프레임워크 : .NET 7.0(표준 용어 지원)

 

MainWindow.xaml

<Window x:Class="DataGridWPF_231117.MainWindow"
        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"
        xmlns:local="clr-namespace:DataGridWPF_231117"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <DataGrid x:Name="dataGrid" AutoGenerateColumns="False">
            <DataGrid.Columns>
                <!-- DataGridTextColumn을 사용하여 각 열을 정의합니다.
                Header 속성은 열의 헤더(제목)를 설정하고, Binding 속성을 통해 데이터 속성과 바인딩합니다. -->
                <DataGridTextColumn Header="이름" Binding="{Binding Name}" />
                <DataGridTextColumn Header="나이" Binding="{Binding Age}" />
            </DataGrid.Columns>
        </DataGrid>
    </Grid>
</Window>

 

MainWindow.xaml.cs

using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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;

namespace DataGridWPF_231117
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        // 데이터 모델 클래스 정의
        private class Person
        {
            public string Name { get; set; }
            public int Age { get; set; }
        }
        public MainWindow()
        {
            InitializeComponent();
            Loaded += dataGrid_init;
        }

        private void dataGrid_init(object sender, RoutedEventArgs e)
        {
            // 샘플 데이터 생성
            ObservableCollection<Person> people = new ObservableCollection<Person>
            {
                new Person { Name = "홍길동", Age = 30 },
                new Person { Name = "김철수", Age = 25 },
                new Person { Name = "이영희", Age = 28 },
            };

            // 데이터 그리드에 데이터 바인딩
            dataGrid.ItemsSource = people;
        }
    }
}

 

 

끝.

Posted by 샌츠
,