Это относится к вчерашнему вопросу "Как создать папки в ASP.NET в коде позади" . Проблема в том, что я хочу создавать динамические папки во время выполнения. Имена папок будут вводиться через TextBox, а вывод будет отображаться в TreeView. Форма будет отправлена, если я введу имя первой папки в textbox1 и нажму кнопку «Добавить папку». Когда я отправляю несколько папок с одним и тем же именем, выводом должен быть индексированный приращение имени (например, FooFolder, FooFolder (2), FooFolder (3) и т. Д.). Существует два события: Добавить событие папки и Удалить событие папки. Если я выберу определенную дочернюю папку и нажму кнопку «Удалить папку», папка будет удалена. Для добавления папки я написал следующий код:
TreeNode tnode = new TreeNode();
if (TreeView1.Nodes.Count > 0)
{
int found = 0;
for (int i = 0; i < TreeView1.Nodes.Count; i++)
{
if (TreeView1.Nodes[i].Text == TextBox1.Text)
found += 1+i;
}
if (found > 0)
{
tnode.Text = TextBox1.Text + found.ToString();
}
else
{
tnode.Text = TextBox1.Text;
}
}
else
{
tnode.Text = TextBox1.Text;
}
TreeView1.Nodes.Add(tnode);
}
В моем коде индекс ChildNode не увеличивается; это всегда 1, вот так:
Sumit
Sumit(1)
Sumit(1)
Sumit(1)
Amit
Amit(5)
Amit(5)
Amit(5)
В виде дерева я установил ImageSet="XPFileExplorer"
. Таким образом, результат должен выглядеть следующим образом:
-Root
-Sumit(Parent1)
NewFolder
NewFolder(2)
NewFolder(3)
NewFolder(4)
NewFolder(5)
-Amit(Parent2)
FooFolder
FooFolder(2)
FooFolder(3)
FooFolder(4)
FooFolder(5)
Если я удаляю любую дочернюю папку, скажем, Newfolder (3) и Newfolder (4) и создаю эти же папки под одним и тем же Sumit (Parent1), индекс должен быть Newfolder (3), Newfolder (4). Если я создаю еще один NewFolder под Sumit с тем же именем, то индекс должен быть NewFolder (6).
Может кто-нибудь изменить мой код, чтобы получить желаемый результат?