数据库表:内部职员
相关字段


思路是以打开的窗体来考虑所有情况。每一个窗体对于depth的值。每向下开一个窗体,depth就累加1,对于第一个窗体以depth=1来检索所有子节点。
第一、打开第一个窗体的检索
按钮分析如下:
1、当前记录cid不为空,分类灰色,删除按钮灰色。
2、当前记录cid为空,分类可见,删除按钮可见。
鼠标双击当前记录分析
1、cid为空,则调用修改当前记录函数
//双击记录要么开编辑窗体,要么进入有子节点的子窗体,不会出现空记录窗体,所有新窗体内会有选定的记录(第一窗体除外)
//所以添加的时候可以取同窗体内其他记录中fid字段的值来作为新记录的fid
//双击打开的新窗体内的记录都有2个共同的字段depth和fid,不会有相同的cid。这一点很重要。
//如果处于第一根窗体,getfid必须为0,这个比较特殊。
if (ModCommon.getdepth == "1")
{
ModCommon.getfid = "0";
}
else
{
//因为处在同一层级,所以可以采用选定记录的fid值来作为新记录的fid的值
ModCommon.getfid = grd_user.SelectedRows[0].Cells[3].Value.ToString();
}
303

被折叠的 条评论
为什么被折叠?



