Code Bye

一个关于Back按钮的代码的问题(点击该Back按钮能返回到上一级文件夹)

这是一个显示文件或文件夹的列表视图的窗体应用程序,其中有个Back按钮
该按钮代码内容如下:
private System.Collections.Specialized.StringCollection folderCol;
private void buttonBack_Click(object sender, EventArgs e)
{
if (folderCol.Count > 1)
{
PaintListView(folderCol[folderCol.Count – 2].ToString());
folderCol.RemoveAt(folderCol.Count – 1);
}
else
{
PaintListView(folderCol[0].ToString());
}
}
其中这个if这段是什么意思呢?
foldCol.Count > 1说明了什么。
folderCol.Count 减去 一个数又说明了什么。  (苦逼的新手/(ㄒoㄒ)/求指导。)
解决方案

40

目测folderCol应该是个堆栈形式的数据结构,存放的的是各个层级的路径,例如:
[0] => “D:”
[1] => “D:\a”
[2] => “D:\a\b”
folderCol.Count > 1 表示当前目录不是顶层目录
例如上面的例子有3个元素,当前目录是D:\a\b\
那么要返回上层目录,就把最后一个元素删除,然后让界面显示-1之后的路径

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明一个关于Back按钮的代码的问题(点击该Back按钮能返回到上一级文件夹)