2009-08-21 1 views
1

Итак, у меня есть LinkButton, называемый linkButton.Почему linkButton не меняет свою командуArgument - даже после создания нового экземпляра и переопределения нового значения?

protected LinkButton linkButton; 

и внутри цикла, который получает каждый каталог указанного каталога, у меня есть это:

linkButton = new LinkButton(); 
    linkButton.Text = DirInf.Name; 
    linkButton.CommandArgument = DirInf.FullName; 
    linkButton.Command += new CommandEventHandler(linkButton_Command); 

Где DirInf имеет тип DirectoryInfo.

Теперь, когда я ставлю:

 Response.Redirect("filebrowser.aspx?dir=" + linkButton.CommandArgument); 
     linkButton = new LinkButton(); 

внутри функции linkButton_Command, linkButton.CommandArgument, кажется, всегда быть "C: \ Windows", который так случается последнее значение linkButton.CommandArgument был назначен.

Но я создал новый экземпляр - но значение все еще сохраняет ...

Я очень озадачен ...

ответ

0

Response.Redirect будет бросать ThreadAbortException, поэтому ваше задание фактически никогда не принимают место. Мне любопытно, когда вы снова тестировали значение, учитывая то, как работает ASP.NET, было ли это на следующем запросе?

Я признаю, что я несколько смущен относительно того, что вы на самом деле делаете. Не могли бы вы привести короткий, но полный пример (page + codebehind), который демонстрирует проблему?

+0

Ну, в основном, это страница ASP.NET, которая имеет таблицу, а на странице кода, она в основном просто вызывает функцию, которая вызывает другую функцию, которая перечисляется через каждую директорию и перечисляет их. Проблема заключается в том, что при добавлении linkButton в столбце Name, linkButton, похоже, не «обновляет» CommandArgument, даже когда я нажимаю на первый/второй/любой элемент, он перенаправляется на CommandArgument последнего элемента. Это не должно происходить - поскольку я создаю новый экземпляр в каждом цикле ... но, похоже, это так ... вот почему я озадачен – 2009-08-21 10:15:59

Смежные вопросы