UpdatePanel Gridview not updating

For some reason, I cannot get the Gridview in the Updatepanel to update after making the changes. can someone help?

I am using the ToolkitScriptManager control and UpdatePanel.

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:GridView blah... </asp:GridView> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="DeleteButton" EventName="Click" /> <asp:AsyncPostBackTrigger ControlID="IBUpUp" EventName="Click" /> <asp:AsyncPostBackTrigger ControlID="IBDownDown" EventName="Click" /> <asp:AsyncPostBackTrigger ControlID="IBUp" EventName="Click" /> <asp:AsyncPostBackTrigger ControlID="IBDown" EventName="Click" /> <asp:AsyncPostBackTrigger ControlID="EditProfile" EventName="Click" /> </Triggers> 

Cs Page

 protected void Unnamed3_Click(object sender, ImageClickEventArgs e) { int rowIndex = GridView1.SelectedIndex; GridViewRow gvr = GridView1.SelectedRow; if (rowIndex >= 0) { //delete String GridViewOne = GridView1.DataKeys[rowIndex].Value.ToString(); //delete image string imagename = gvr.Cells[2].Text; string pathToImage = @"C:\Images\"; pathToImage = pathToImage + imagename; if (System.IO.File.Exists(pathToImage)) { // Use a try block to catch IOExceptions, to // handle the case of the file already being // opened by another process. try { System.IO.File.Delete(pathToImage); } catch (System.IO.IOException m) { Console.WriteLine(m.Message); return; } } int bannerid = Convert.ToInt32(GridViewOne); SqlDataReader sdr = null; SqlConnection conn = GetConnection(); SqlCommand cmd = new SqlCommand("Tool_DeleteBannerAds", conn); cmd.CommandType = CommandType.StoredProcedure; SqlParameter param1 = new SqlParameter(); param1.ParameterName = "@BannerID"; param1.Value = bannerid; cmd.Parameters.Add(param1); conn.Open(); sdr = cmd.ExecuteReader(); sdr.Close(); UpdatePanel1.Update(); GridView1.DataBind(); } else { //don't do anything //keep //Response.Redirect("Default.aspx"); } } 
+4
source share
3 answers

reorder:

  GridView1.DataBind(); UpdatePanel1.Update(); 
+12
source

Here is my code for your question

ASPX FILE

 <body> <form id="form1" runat="server"> <asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" runat="server"> </asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="server"> <ContentTemplate> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"> <Columns> <asp:BoundField HeaderText="Name List" DataField="EmpName" /> </Columns> </asp:GridView> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" /> </Triggers> </asp:UpdatePanel> <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click1" /> </form> </body> 

CODE BEHIND FILE

  protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { var Employee = new { EmpID = 1, EmpName = "Rahul Jain", Department = "IT", Age = 33, Address = "Hello" }; var customerList = (new[] { Employee }).ToList(); customerList.Add(new { EmpID = 2, EmpName = "Sheetal Jain", Department = "IT", Age = 33, Address = "Hello" }); GridView1.DataSource = customerList; GridView1.DataBind(); } } protected void Button1_Click1(object sender, EventArgs e) { try { var Employee = new { EmpID = 1, EmpName = "Rahul Jain", Department = "IT", Age = 33, Address = "Hello" }; var customerList = (new[] { Employee }).ToList(); customerList.Add(new { EmpID = 2, EmpName = "Sheetal Jain", Department = "IT", Age = 33, Address = "Hello" }); customerList.Add(new { EmpID = 2, EmpName = "Minakshi Jain", Department = "IT", Age = 33, Address = "Hello" }); GridView1.DataSource = customerList; GridView1.DataBind(); } catch (Exception ex) { throw ex; } } 

This Dosent Code Created a postback for me, hope this works for you too.

0
source

Alternatively, you can set UpdateMode to Always (the default) so that any web control triggers a postback to automatically update the GridView.

This will save you a few lines of code (setting up triggers), but also help if you dynamically add controls to your GridView, which will also trigger postback events on your page.

0
source

Source: https://habr.com/ru/post/1345762/


All Articles