Mcbaloo Ответов: 1

Как сделать так, чтобы кнопка внутри gridview вызывала частичный пост назад и обновляла мою панель


у меня есть панель обновления с gridview. Таблицы состоят из столбцов кнопку. Я хочу, чтобы каждый раз, когда эта кнопка нажата, панель обновления должна обновляться. Из того, что мне удалось сделать, Баттон работает нормально, но я смогу увидеть эффект только тогда, когда снова обновлю всю страницу. Мне нужно увидеть эффект на событие щелчка, не обновляя страницу. Как сделать так, чтобы эта кнопка gridview вызывала частичную обратную передачу

Что я уже пробовал:

<pre lang="ASP.NET"><asp:TemplateField HeaderText="Action" Visible="True">
                               <ItemTemplate>
                                   <asp:Button Visible='<%# string.IsNullOrEmpty(Eval("Signout_Time").ToString()) %>' ID="out" runat="server" Text="Sign out" CommandName="SignOut"  CommandArgument='<%#Eval("SN") %>' ClientIDMode="AutoID"/>
                               </ItemTemplate>
                           </asp:TemplateField>


Это код позади.

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
       {
           if (e.Row.RowType == DataControlRowType.DataRow)
           {
               Button lb = e.Row.FindControl("out") as Button;
               ScriptManager.GetCurrent(this).RegisterAsyncPostBackControl(lb);
           }
    }


вот что делает кнопка, когда я нажимаю
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
       {
          if (e.CommandName == "SignOut")
           {
               string sN = e.CommandArgument.ToString();
               reg.sn = int.Parse(sN);
           string sign = System.DateTime.Now.ToString("yyyy-MM-dd:HH:mm:ss"); // get time out time
           reg.signout = sign;
           reg.SignOut(); // Save the signout time in db



После всего процесса я хочу, чтобы кнопка обновляла только панель обновления.