我有一个大问题。我尝试将我的WPF DataGrid
绑定到使用内连接创建的表。我已经为要成功转换的信息创建了一个类:
public class NeshtoSi
{
public NeshtoSi() { }
public string ssn;
public string name;
public string surname;
}
然后我创建了内连接表。仍然在我分配ItemsSource
时,所有值都已正确传输,但DataGrid
无法将其显示。
var dd = from d in dataContext.Medical_Examinations
join p in dataContext.Patients on d.SSN equals p.SSN
select new NeshtoSi { ssn = d.SSN, name = p.Name, surname = p.Surname };
IQueryable<NeshtoSi> sQuery = dd;
if (!string.IsNullOrEmpty(serName.Text))
sQuery = sQuery.Where(x => x.name.Contains(serName.Text));
if (!string.IsNullOrEmpty(serSurame.Text))
sQuery = sQuery.Where(x => x.surname.Contains(serSurame.Text));
if (!string.IsNullOrEmpty(serSSN.Text))
sQuery = sQuery.Where(x => x.ssn.Contains(serSSN.Text));
var results = sQuery.ToList();
AnSearch.ItemsSource = sQuery;
我希望有人可以帮助我...
答案 0 :(得分:2)
您提供的代码似乎没问题 - 对象的创建方式无关紧要 - 重要的是对象本身。
不应向我们展示,而应展示xaml。
还有一件事 - 我们是在谈论winforms中的DataGridView,还是WPF Toolkit附带的DataGridView?
=======================================
对不起。我首先想念它 - 你班上没有属性!您已经创建了公共字段而不是属性,这可能就是问题所在。
代码应如下所示:
public class NeshtoSi
{
public NeshtoSi() { }
public string ssn{get; set;}
public string name{get; set;}
public string surname{get; set;}
}
答案 1 :(得分:0)
我最近经历了这个问题,我的帖子中概述了答案here