Пользовательский интерфейс Updatepanel не обновляется при нажатии кнопки из GridviewC#

Место общения программистов C#
Ответить
Anonymous
 Пользовательский интерфейс Updatepanel не обновляется при нажатии кнопки из Gridview

Сообщение Anonymous »

Пользовательский интерфейс моей панели обновлений не обновляется при нажатии кнопки ссылки в представлении сетки. Панель обновлений, которую я хочу обновить, не находится внутри GridView. Итак, это мой код:

Код: Выделить всё

  


// //  I tried this with regular onlick but it did not work.




[i]
//  
[/i] // I tried this with the onclick command and trigger. (Also without the trigger)
[i]
[/i]














 // without this trigger, i kept getting regular post back. With this trigger I get Async but the UI does not update.
// // tried this with the regular click event.


C#: вот что я делал, когда использовал onclick

Код: Выделить всё

 protected void expandLBtn_Click(object sender, EventArgs e)
{

GridViewRow row = (GridViewRow)((LinkButton)sender).NamingContainer;

HtmlControl FlagAttendanceDetailsCol = (HtmlControl)attendanceDetailsCol.FindControl("attendanceDetailsCol");
UpdatePanel FlagUpdatePanel2 = (UpdatePanel)FlagAttendanceDetailsCol.FindControl("UpdatePanel2");
System.Web.UI.WebControls.Label FlagLabel2 = (System.Web.UI.WebControls.Label)FlagUpdatePanel2.FindControl("Label3");
FlagLabel2.Text="test";

Label2.Text = "New value2";
UpdatePanel2.Update();
}
C#: это то, что я пробовал при использовании GridViewCommandEventArgs

Код: Выделить всё

if (e.CommandName == "UpdateTextBox")
{

int rowIndex = Convert.ToInt32(e.CommandArgument);

LinkButton FlagExpandLBtn = attendanceGv.Rows[rowIndex].FindControl("expandLBtn") as System.Web.UI.WebControls.LinkButton;
ScriptManager1.RegisterAsyncPostBackControl(FlagExpandLBtn);

// Here, you can retrieve the data associated with the row that contains the clicked button and
// perform any necessary data operations.
System.Web.UI.WebControls.Label txtBox2 = UpdatePanel2.FindControl("Label2") as System.Web.UI.WebControls.Label;
System.Web.UI.WebControls.Label txtBox3 = UpdatePanel2.FindControl("Label3") as System.Web.UI.WebControls.Label;
if (txtBox2 != null)
{
txtBox2.Text = "test2";
// call the Update method on the UpdatePanel
//    Label2.Text = "New value"; // Update the TextBox in the other UpdatePanel.
attendanceDetailsCol.Visible = true;

}
if (txtBox3 != null)
{
txtBox3.Text = "test3";
// call the Update method on the UpdatePanel
//    Label3.Text = "New value"; // Update the TextBox in the other UpdatePanel.
attendanceDetailsCol.Visible = true;

}

string test = Label2.Text;
string test2 = Label3.Text;

UpdatePanel2.Update();

}
Я попробовал отладку, но никаких ошибок не возникло, и прежде чем я доберусь до раздела updatepanel2.update, в текстовых полях будет показано, что он был изменен, но это никогда не отображается в пользовательском интерфейсе.
п>

Подробнее здесь: https://stackoverflow.com/questions/758 ... m-gridview
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»