Note that there are some explanatory texts on larger screens.

plurals
  1. POCalling a bool method in two buttons not working
    text
    copied!<p>I have a <code>bool</code> method which calculates the sum (quantity*price) it works fine. When I call the method from one button it works fine. </p> <pre><code>protected void btnupdate_Click(object sender, EventArgs e) { calculate_sum(); } </code></pre> <p>I also need to call it again from different button. So I try to write this:</p> <pre><code>if(calculate_sum()) { something } else { something } </code></pre> <p>The problem is with the second button it doesn't perform the method it just takes the value which was calculated before when button <code>btnupdate</code> was clicked and doesn't comes in to perform it again.</p> <p>The <code>aspx</code> page is wrapped in <code>updatepanels</code> with triggers maybe there's something to do with that?</p> <p>Here is the code of the method:</p> <pre><code>public bool calculate_sum() { bool is_ok = true; ; double totalsum = 0; int qty = 0; ; string p = ""; for (int i = 0; i &lt; GridView2.Rows.Count; i++) { if (GridView2.Rows[i].RowType == DataControlRowType.DataRow) { TextBox txtqty = GridView2.Rows[i].FindControl("lblquantity") as TextBox; p = GridView2.Rows[i].Cells[0].Text.ToString(); if (Int32.TryParse(txtqty.Text, out qty)) { if (qty &gt; 0) { double pr = Convert.ToDouble(p.ToString()); //total per row double tcost = qty * pr; totalsum = totalsum + tcost; GridView2.Rows[i].Cells[6].Text = Convert.ToString((tcost)); } else { lblGrandTotal.Visible = true; lblGrandTotal.Text = "enter only numbers greater than 0"; lblGrandTotal.ForeColor = System.Drawing.Color.Red; is_ok = false; } } else { lblGrandTotal.Visible = true; lblGrandTotal.Text = "enter only numbers greater than 0"; lblGrandTotal.ForeColor = System.Drawing.Color.Red; is_ok = false; } } } if (is_ok) { lblGrandTotal.ForeColor = System.Drawing.Color.Black; lblGrandTotal.Text = Convert.ToString((totalsum)); return is_ok; } else { return is_ok; } } </code></pre> <p>Here the aspx page:</p> <pre><code>&lt;%@ Page Title="Check out" Language="C#" MasterPageFile="~/MasterPage/MasterPage.master" AutoEventWireup="true" CodeFile="CheckOut.aspx.cs" Inherits="CheckOut" %&gt; &lt;asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"&gt; &lt;/asp:Content&gt; &lt;asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"&gt; &lt;asp:ScriptManagerProxy ID="ScriptManagerProxy1" runat="server"&gt; &lt;/asp:ScriptManagerProxy&gt; &lt;asp:UpdatePanel ID="UpdatePanel1" runat="server" ChildrenAsTriggers="False" UpdateMode="Conditional"&gt; &lt;ContentTemplate&gt; &lt;asp:HiddenField ID="hfGrandTotal" runat="server" /&gt; &lt;asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" &gt; &lt;Columns&gt; &lt;asp:BoundField DataField="Price" HeaderText="Price" ItemStyle-CssClass="price" &gt; &lt;ItemStyle CssClass="price"&gt;&lt;/ItemStyle&gt; &lt;/asp:BoundField&gt; &lt;asp:TemplateField HeaderText="ProductID" Visible="False"&gt; &lt;ItemTemplate&gt; &lt;asp:Label ID="lblID" runat="server" Text='&lt;%# Eval("ProductID") %&gt;'&gt;&lt;/asp:Label&gt; &lt;/ItemTemplate&gt; &lt;/asp:TemplateField&gt; &lt;asp:TemplateField HeaderText="ProductName"&gt; &lt;ItemTemplate&gt; &lt;asp:Label ID="lblName" runat="server" Text='&lt;%# Eval("ProductName") %&gt;'&gt;&lt;/asp:Label&gt; &lt;/ItemTemplate&gt; &lt;/asp:TemplateField&gt; &lt;asp:TemplateField HeaderText="Summary"&gt; &lt;ItemTemplate&gt; &lt;asp:Label ID="lblSum" runat="server" Text='&lt;%# Eval("Summary") %&gt;'&gt;&lt;/asp:Label&gt; &lt;/ItemTemplate&gt; &lt;/asp:TemplateField&gt; &lt;asp:TemplateField HeaderText="picPath" Visible="False"&gt; &lt;ItemTemplate&gt; &lt;asp:Label ID="lblPic" runat="server" Text='&lt;%# Eval("picPath") %&gt;' &gt;&lt;/asp:Label&gt; &lt;/ItemTemplate&gt; &lt;/asp:TemplateField&gt; &lt;asp:TemplateField HeaderText = "quantity"&gt; &lt;ItemTemplate&gt; &lt;asp:TextBox ID="lblquantity" runat="server" &gt;1&lt;/asp:TextBox&gt; &lt;/ItemTemplate&gt; &lt;/asp:TemplateField&gt; &lt;asp:TemplateField HeaderText = "Total"&gt; &lt;ItemTemplate&gt; &lt;asp:Label ID="lblTotal" runat="server" &gt;&lt;/asp:Label&gt; &lt;/ItemTemplate&gt; &lt;/asp:TemplateField&gt; &lt;/Columns&gt; &lt;/asp:GridView&gt; &lt;br /&gt; total sum: &lt;asp:Button ID="btnupdate" runat="server" Text="update quantity" onclick="btnupdate_Click" ValidationGroup="panel1" /&gt; &lt;asp:Label ID="lblGrandTotal" runat="server" &gt;&lt;/asp:Label&gt; &lt;/ContentTemplate&gt; &lt;Triggers&gt; &lt;asp:AsyncPostBackTrigger ControlID="btnupdate" EventName="Click" /&gt; &lt;/Triggers&gt; &lt;/asp:UpdatePanel&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional"&gt; &lt;ContentTemplate&gt; &lt;asp:Table ID="Table1" runat="server" CellPadding="7" CellSpacing="7" CaptionAlign="Bottom" HorizontalAlign="Center" BorderStyle="Solid" BorderWidth="1" BorderColor="Black" Height="305px" Width="408px"&gt; &lt;asp:TableHeaderRow BorderStyle="Solid" BorderWidth="1" BorderColor="Black"&gt; &lt;asp:TableCell ColumnSpan="3" BorderStyle="Solid" BorderWidth="1" BorderColor="Black"&gt;customer details&lt;/asp:TableCell&gt; &lt;/asp:TableHeaderRow&gt; &lt;asp:TableRow runat="server" &gt; &lt;asp:TableCell runat="server" &gt; &lt;asp:TextBox ID="TextBox1" runat="server" Width="150px"&gt;&lt;/asp:TextBox&gt; &amp;nbsp; &amp;nbsp;&lt;asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ForeColor="Red" ErrorMessage="חובה" ControlToValidate="TextBox1" Text="requierd" ValidationGroup="panel2"&gt;&lt;/asp:RequiredFieldValidator&gt; &lt;/asp:TableCell&gt; &lt;asp:TableCell runat="server"&gt; &lt;asp:Label ID="Label1" runat="server" Text="name"&gt;&lt;/asp:Label&gt; &lt;/asp:TableCell&gt; &lt;/asp:TableRow&gt; &lt;asp:TableRow ID="TableRow1" runat="server"&gt; &lt;asp:TableCell ID="TableCell1" runat="server"&gt; &lt;asp:TextBox ID="TextBox4" runat="server" Width="150px" CausesValidation="True"&gt;&lt;/asp:TextBox&gt; &amp;nbsp; &amp;nbsp;&lt;asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ForeColor="Red" ErrorMessage="חובה" ControlToValidate="TextBox4" Text="requierd" ValidationGroup="panel2"&gt;&lt;/asp:RequiredFieldValidator&gt; &lt;br /&gt; &lt;asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ErrorMessage="הקלד מספר טלפון" ControlToValidate="TextBox4" ForeColor="Red" ValidationExpression="^(02|03|04|08|09|050|052|054|057|074|077)\-\d{7,8}$"&gt;&lt;/asp:RegularExpressionValidator&gt; &lt;/asp:TableCell&gt; &lt;asp:TableCell ID="TableCell2" runat="server"&gt; &lt;asp:Label ID="Label4" runat="server" Text="phone"&gt;&lt;/asp:Label&gt; &lt;/asp:TableCell&gt; &lt;/asp:TableRow&gt; &lt;asp:TableRow runat="server"&gt; &lt;asp:TableCell runat="server"&gt; &lt;asp:TextBox ID="TextBox2" runat="server" Width="150px" CausesValidation="True"&gt;&lt;/asp:TextBox&gt; &amp;nbsp; &amp;nbsp; &lt;asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ForeColor="Red" ErrorMessage="חובה" ControlToValidate="TextBox2" Text="requierd" ValidationGroup="panel2"&gt;&lt;/asp:RequiredFieldValidator&gt; &lt;/asp:TableCell&gt; &lt;asp:TableCell&gt; &lt;asp:Label ID="Label2" runat="server" Text="address"&gt;&lt;/asp:Label&gt; &lt;/asp:TableCell&gt; &lt;/asp:TableRow&gt; &lt;asp:TableRow runat="server"&gt; &lt;asp:TableCell runat="server"&gt; &lt;asp:TextBox ID="TextBox3" runat="server" Width="150px"&gt;&lt;/asp:TextBox&gt; &amp;nbsp; &amp;nbsp;&lt;asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ForeColor="Red" ErrorMessage="חובה" ControlToValidate="TextBox3" Text="requierd" ValidationGroup="panel2"&gt;&lt;/asp:RequiredFieldValidator&gt; &lt;br /&gt; &lt;asp:RangeValidator ID="RangeValidator1" runat="server" ErrorMessage="only digits" ControlToValidate="TextBox3" ForeColor="Red" MinimumValue="1000" MaximumValue="9999999999999999" ValidationGroup="panel2"&gt;&lt;/asp:RangeValidator&gt; &lt;/asp:TableCell&gt; &lt;asp:TableCell runat="server"&gt; &lt;asp:Label ID="Label3" runat="server" Text="number"&gt;&lt;/asp:Label&gt; &lt;/asp:TableCell&gt; &lt;/asp:TableRow&gt; &lt;asp:TableRow&gt; &lt;asp:TableCell ColumnSpan="3"&gt; &lt;asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="pay" Width="150" ValidationGroup="panel2" /&gt; &lt;/asp:TableCell&gt; &lt;/asp:TableRow&gt; &lt;asp:TableRow&gt; &lt;asp:TableCell ColumnSpan="3"&gt; &lt;asp:Label ID="lblmessage" runat="server" Text="Label" Font-Size="XX-Large" Visible="False"&gt;&lt;/asp:Label&gt; &lt;/asp:TableCell&gt; &lt;/asp:TableRow&gt; &lt;/asp:Table&gt; &lt;asp:Button ID="btnPrint" runat="server" Text="print" onclick="btnPrint_Click" Visible="False" /&gt; &lt;/ContentTemplate&gt; &lt;Triggers&gt; &lt;asp:AsyncPostBackTrigger ControlID="btnPrint" EventName="Click" /&gt; &lt;/Triggers&gt; &lt;/asp:UpdatePanel&gt; &lt;/asp:Content&gt; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload