首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

哪为仁兄帮小弟我分析一下这段代码,C#的for嵌套(新手)

2012-01-13 
哪为仁兄帮我分析一下这段代码,C#的for嵌套(新手) for(inti0ids.Tables[0].Rows.Counti++){for(intx0

哪为仁兄帮我分析一下这段代码,C#的for嵌套(新手)

for(int   i   =   0   ;   i   <   ds.Tables[0].Rows.Count   ;   i++)
{
for(int   x   =   0   ;   x   <   treeModels.Nodes.Count   ;   x++)
{
if(ds.Tables[0].Rows[i][ "ModelCode "].ToString()   ==   treeModels.Nodes[x].Tag.ToString())
treeModels.Nodes[x].Checked   =   true;

if(treeModels.Nodes[x].Nodes.Count   >   0)
CheckNodes(treeModels.Nodes[x],ds.Tables[0].Rows[i][ "ModelCode "].ToString());
}
}

如题,谢谢各位~~!

[解决办法]
楼主要问什么?
-----------------------
CSDN 论坛助手
http://china-csdn.cn
[解决办法]
你对这段代码有什么疑问?
[解决办法]
看的明白,说不清白。。。帮顶
[解决办法]
CheckNodes方法是什么?
估计是想递归
[解决办法]
应该是实现了 treenode的check状态和数据库记录的一个匹配吧?
[解决办法]
似乎是判断节点是否是可以展开的(即是否有子节点)
[解决办法]
if(ds.Tables[0].Rows[i][ "ModelCode "].ToString() == treeModels.Nodes[x].Tag.ToString())
treeModels.Nodes[x].Checked = true;

如果这个节点的tag和数据库里对应的值一样,那么把他前面的复选框选中

if(treeModels.Nodes[x].Nodes.Count > 0)
CheckNodes(treeModels.Nodes[x],ds.Tables[0].Rows[i][ "ModelCode "].ToString());

如果这个节点还有子节点的话,那么调用CheckNodes

[解决办法]
这应该是一个递归的过程,用DataTable中每行记录的ModelCode字段与树节点的tag 进行比对,值相待的NODE的复选框选
[解决办法]
在加载的node的时候设定了node的Tag值,用于标记
在检测的时候就检测这个值

如果我新加了一个窗口,怎么才能让新加入的窗口也加进来呢?

什么意思?
[解决办法]
这个和新窗体有啥子关系哦?
[解决办法]
明白了
把新窗口的名称加到数据库里就可以了,只是节点要对应好

热点排行