日期:2014-05-17  浏览次数:21059 次

[求助]遍历控件 居然逆序的问题
tabPage2中
一个按钮  
30个PictureBox 名字依次为 p01 p02 p03 p04 ~~~ p30
如果文件夹中有20个图片,则依次在 PictureBox中显示



int iFileNum=20;//文件夹中图片的数量
int i = 0;
                
                foreach (Control c in this.tabPage2.Controls)
                {
                    if (c is PictureBox)
                    {
                       
                        if(i+1>iFileNum)//如果i大于图片数,则取消赋值
                        {
                        return;
                        }
                            PictureBox temp = c as PictureBox;
                            temp.ImageLocation = testList[i];
                            i++;
                    }
                }


现在在问题是:它自动先给P30,然后P2  P28   ..我想正序。

------解决方案--------------------
那你就不要用tabPage2.Controls给出的顺序(这可能跟添加顺序以及Zorder有关系)。

准备一个List<PictureBox> pictureBoxes,这样你就能完全控制它的循序了。
------解决方案--------------------
应该是和添加顺序有关的。你看一下Designer文件中,Initializecomponent里面tabPage2应该有一个AddRange