gpt4 book ai didi

c# - 在运行时更改数据源后 DataGridView 为空白

转载 作者:行者123 更新时间:2023-11-30 22:29:55 30 4
gpt4 key购买 nike

我有一个表单,当它被创建时它会查询

 public IQueryable<PatientInfo> showMyPatients() 
{
DbClassesDataContext myDb = new DbClassesDataContext(dbPath);
var patientInfo = from patients in myDb.PatientInfos
where patients.Phy_ID == physcianID
select patients;

return patientInfo;
}

一旦我调用它,我会将它插入一个变量并将它作为参数传递给这里

public void fillDataGrid(IQueryable<PatientInfo> patients) 
{
dgvMyPatients.DataSource = patients;
}

听起来很简单吧?但是当我运行这个查询时

private IQueryable<PatientInfo> searchPatient() 
{
DbClassesDataContext myDb = new DbClassesDataContext(dbPath);
var search = from myPatients in myDb.PatientInfos
where (myPatients.Pat_ID == patient_ID && myPatients.Pat_First_Name.Contains(txtSearch.Text)) ||
(myPatients.Pat_ID == patient_ID && myPatients.Pat_Last_Name.Contains(txtSearch.Text)) ||
(myPatients.Pat_ID == patient_ID && myPatients.Pat_Middle_Name.Contains(txtSearch.Text))
select myPatients;

return search;
}

并将其作为参数传递给 fillDataGrid() DataGrid 将具有空白值,即使该查询有结果也是如此

BindingSource bs = new BindingSource();
bs.DataSource = searchPatient();
dgvMyPatients.DataSource = bs;

注意:两个查询都返回 PATIENTINFO,我将插入同一个 DataGrid

最佳答案

尝试添加这些行

dgvMyPatients.Columns.Clear();
dgvMyPatients.AutoGenerateColumns = true;
dgvMyPatients.DataSource = bs;

关于c# - 在运行时更改数据源后 DataGridView 为空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9963416/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com