У меня есть этот код для заполнения моего DataGrid
:
private void getData()
{
var context = new dbStudentEntities();
var data = (from s in context.tblStudents
join c in context.tblClasses
on s.classID equals c.classID
select new {
s.studentID, c.classID, s.firstName, s.middleName,
s.lastName, s.age, c.className});
dgStudents.ItemsSource = data.ToList();
}
Теперь я хочу, чтобы мой TextBox был заполнен SelectedItem в DataGrid.У меня есть этот код в моем событии SelectionChanged:
dbStudentEntities context = new dbStudentEntities();
try
{
txtFirst.Text = ((tblStudent)dgStudents.SelectedItem).firstName.ToString();
txtMiddle.Text = ((tblStudent)dgStudents.SelectedItem).middleName.ToString();
txtLast.Text = ((tblStudent)dgStudents.SelectedItem).lastName.ToString();
txtAge.Text = ((tblStudent)dgStudents.SelectedItem).age.ToString();
}
catch (Exception ex)
{
MessageBox.Show("" + ex);
}
Но каждый раз, когда я выбираю строку, появляется эта ошибка:
Невозможно привести объект типа '<> f__AnonymousType07[System.Int32,System.Int32,System.String,System.String,System.String,System.Nullable
1 [System.Int32], System.String] 'для ввода' EFStudents.tblStudent '.
Что мне делать?