.net相关。datagridview数据绑定问题。设置了父窗体,数据就不能显示。
正常的。不能显示的。代码如下:publicpartialclassFrmStudentInfo:Form{publicFrmStudentInfo(){Initializ...
正常的。
不能显示的。
代码如下:
public partial class FrmStudentInfo : Form
{
public FrmStudentInfo()
{
InitializeComponent();
}
private void FrmStudentInfo_Load(object sender, EventArgs e)
{
this.DGV.AutoGenerateColumns = false; //设置不让系统自动生成列
BindStudents(); //绑定数据方法
}
StudentManager studentManager = new StudentManager();
/// <summary>
/// 绑定DGV表中的学生信息
/// </summary>
public void BindStudents()
{
try
{
List<Students> list = studentManager.GetAllStudetns();
this.DGV.DataSource = list; //绑定数据
//当得到的集合不为空时,设置年级名称信息
if (list != null)
{
for (int i = 0; i < list.Count; i++)
{
//循环绑定第5列的值
this.DGV.Rows[i].Cells[4].Value = GetGradeNameByGradeNo(list[i].GradeNo);
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
/// <summary>
/// 通过年级编号查询年级名称
/// </summary>
/// <param name="gradeNo">年级编号</param>
/// <returns>返回年级名称</returns>
public string GetGradeNameByGradeNo(int gradeNo)
{
GradeManager gradeManager = new GradeManager();
//定义年级名称
string gradeName = "";
try
{
List<Grade> GradeList = gradeManager.GetAllGrade();
if (GradeList != null)
{
//循环判断传过来的年级编号与集合的的编号,得到相等时的年级名称
for (int i = 0; i < GradeList.Count; i++)
{
if (GradeList[i].GradeNo == gradeNo)
{
gradeName = GradeList[i].GradeName;
}
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return gradeName;
} 展开
不能显示的。
代码如下:
public partial class FrmStudentInfo : Form
{
public FrmStudentInfo()
{
InitializeComponent();
}
private void FrmStudentInfo_Load(object sender, EventArgs e)
{
this.DGV.AutoGenerateColumns = false; //设置不让系统自动生成列
BindStudents(); //绑定数据方法
}
StudentManager studentManager = new StudentManager();
/// <summary>
/// 绑定DGV表中的学生信息
/// </summary>
public void BindStudents()
{
try
{
List<Students> list = studentManager.GetAllStudetns();
this.DGV.DataSource = list; //绑定数据
//当得到的集合不为空时,设置年级名称信息
if (list != null)
{
for (int i = 0; i < list.Count; i++)
{
//循环绑定第5列的值
this.DGV.Rows[i].Cells[4].Value = GetGradeNameByGradeNo(list[i].GradeNo);
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
/// <summary>
/// 通过年级编号查询年级名称
/// </summary>
/// <param name="gradeNo">年级编号</param>
/// <returns>返回年级名称</returns>
public string GetGradeNameByGradeNo(int gradeNo)
{
GradeManager gradeManager = new GradeManager();
//定义年级名称
string gradeName = "";
try
{
List<Grade> GradeList = gradeManager.GetAllGrade();
if (GradeList != null)
{
//循环判断传过来的年级编号与集合的的编号,得到相等时的年级名称
for (int i = 0; i < GradeList.Count; i++)
{
if (GradeList[i].GradeNo == gradeNo)
{
gradeName = GradeList[i].GradeName;
}
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
return gradeName;
} 展开
展开全部
设置为父窗体之后看下,集合里面还有没有年级这个列,并且看下是不是跟绑定的名字是一样的
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看看“GetAllStudetns();”和“GetAllGrade();”方法中是否存在要比较的字段值,可以打个断点看看走到那里出错。
追问
不设置父窗体是正常的,就是设置了父窗体就不行了。应该不你说的问题。
可能是加载的时候,不知哪里出了问题。
追答
父窗体上都有什么控件?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询