C# DataGrid

jiyul·2023년 12월 11일
0

C#

목록 보기
15/21
post-thumbnail

xaml 코드로 헤더 데이터(컬럼) 추가하기

<DataGrid x:Name="StudentList" d:ItemsSource="{d:SampleData ItemCount=5}" Margin="0,41,0,0" CanUserAddRows="False">
    <DataGrid.Columns>
        <DataGridTextColumn Header="이름" Binding="{Binding Path=name}" Width="130"/>
        <DataGridTextColumn Header="학번" Binding="{Binding Path=id}" Width="130"/>
        <DataGridTextColumn Header="학과" Binding="{Binding Path=major}" Width="130"/>
        <DataGridTextColumn Header="학년" Binding="{Binding Path=grade}" Width="130"/>
        <DataGridTextColumn Header="비고" Binding="{Binding Path=etc}" Width="130"/>
    </DataGrid.Columns>
</DataGrid>

cs 코드로 데이터 추가하기

public class Data
{
    public string name { get; set; }
    public string id { get; set; }
    public string major { get; set; }
    public int grade { get; set; }
    public string etc { get; set; }
}

List<Data> list = new List<Data>();
list.Add(new Data { name = "이지원", id = "210651", major = "컴퓨터공학", grade = 1, etc = "" });
list.Add(new Data { name = "김현호", id = "210184", major = "컴퓨터공학", grade = 1, etc = "" });
StudentList.ItemsSource = list;

원하는 값 가져오기

//하나의 행만 가져오기
Data dataRow = (Data)StudentList.SelectedItem;
string data = dataRow.name;
MessageBox.Show(data);

//여러개의 행이 선택된 경우
string names = string.Empty;
foreach(Data dataRow in StudentList.SelectedItems)
{
    names += dataRow.name + "\r\n";
}
MessageBox.Show(names + "선택됨.");
profile
Let's take the lead

0개의 댓글

관련 채용 정보