2016-09-08 5 views
0

확인란, 이름 및 전자 메일로 데이터 격자가 있습니다. On CheckboxChecked 전자 메일을 다른 목록이나 문자열로 복사하려고합니다.WPF Datagrid에서 CheckboxChecked-Event에 대한 데이터 가져 오기

확인 된 행에서 특정 값을 얻으려면 어떻게해야합니까?

private void CheckBox_Checked(object sender, RoutedEventArgs e) 
{ 
    object row = lbxCC1.SelectedItem; 
    int columnIndex = lbxCC1.Columns.Single(c => c.Header.Equals("eMail")).DisplayIndex; 
    String eMail = (lbxCC1.SelectedCells[columnIndex].Column.GetCellContent(row) as TextBlock).Text; 
    MessageBox.Show(eMail); 
} 

편집 (2016년 9월 9일) :가 어쩌면 내가 당신에게 좀 더 코드를 표시해야합니다. aswell 내가 맞다 난 뒤에 코드에서 열을 짓고 있어요으로

lbxCC1.DataContext = PersonService.ReadFile(@"C:\Test.csv"); 

, 나는 내가 그들을 결합해야 같아요

public class Person 
{ 
    public string Nachname { get; set; } 
    public string Vorname { get; set; } 
    public string eMail { get; set; } 
    public string Abteilung { get; set; } 

} 
public static class PersonService 
{ 
    public static List<Person> ReadFile(string filepath) 
    { 
     var lines = File.ReadAllLines(filepath); 

     var data = from l in lines.Skip(1) 
        let split = l.Split(';') 
        select new Person 
        { 
         Nachname = split[1], 
         Vorname = split[2], 
         eMail = split[31], 
         Abteilung = split[4], 
        }; 

     return data.ToList(); 
    } 
} 

나는 그것을 호출?

이 죄송

,하지만 난이 당신을 도울 것 같아요

답변

0

:-) DataGrids를 새로운 해요 :

당신의 CheckBox_Checked 이벤트에 다음
Dim row As Data.DataRowView = DirectCast([yourDataGrid].SelectedItems(rowIndex), Data.DataRowView) 

:

private void CheckBox_Checked(object sender, RoutedEventArgs e) 
{ 
    MessageBox.Show(row("email"); 'Assuming the column name is email 
} 

이를 값이 DataGrid에 데이터 바인딩되어있는 경우입니다.