Click here to Skip to main content
15,886,110 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
hi,
button click in second tab is not working.when i click OK button in second tab ,it redirects to another page(that page should display gridview)

Now the problem is page redirection is happening but it's not displaying gridview.
My database query is correct.(i was checked it by taking the query in debugging)
here is the code:
C#
<pre lang="c#"><pre lang="c#"><%@ Page Language="C#" AutoEventWireup="true" CodeBehind="User.aspx.cs" Inherits="Online_Billing_System.User" %>
<%@ Register Namespace="AjaxControlToolkit" Assembly="AjaxControlToolkit" tagPrefix="ajax" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>User</title>
    <style type="text/css">
        .style1
        {
            width: 147px;
        }
    </style>
    
</head>
<body>
<form id="form1" runat="server">
<ajax:ToolkitScriptManager ID="scriptmanager1"   runat="server">
    
</ajax:ToolkitScriptManager>
<div style=" width:69%">
<ajax:TabContainer ID="usertabContainer"   runat="server" ActiveTabIndex="1" 
         önactivetabchanged="usertabContainer_ActiveTabChanged" AutoPostBack="true" >
<ajax:TabPanel ID="tbpnlbal"   runat="server" ><HeaderTemplate>View Balance</HeaderTemplate><ContentTemplate><asp:Panel ID="viewbal" runat="server" Width="498px"><table align="center"><tr><td align="right" colspan="2" ></td><td>Account Balance </td></tr><tr><td></td><td align="right" >Member ID: </td><td><asp:TextBox 
        ID="txtusermemid" runat="server"></asp:TextBox></td></tr><tr><td></td><td align="right" >Card ID: </td><td><asp:TextBox 
            ID="txtusercardid" runat="server" ></asp:TextBox></td></tr><tr><td></td><td align="right">Name: </td><td><asp:TextBox 
            ID="txtusername" runat="server"></asp:TextBox></td><td></td>
        <td><asp:Label ID="Label1" runat="server" Text="(Optional)"></asp:Label></td>
    </tr><tr><td></td><td></td><td align="left" ><asp:Button ID="btnbalok" runat="server" Text="OK" onclick="btnbalok_Click"/>
        <asp:Button ID="btnbalcancel" runat="server" Text="Clear" 
       OnClientClick="this.form.reset();return false;"/></td></tr></table></asp:Panel></ContentTemplate></ajax:TabPanel>
<ajax:TabPanel ID="tbpnltxhistory"   runat="server" ><HeaderTemplate>Transaction History</HeaderTemplate><ContentTemplate><asp:Panel ID="txhistory" runat="server" Width="545px"><table align="center"><tr><td align="right" colspan="2" ></td><td>Transaction History </td></tr><tr><td align="right" colspan="2">Member ID: </td><td>
    <asp:TextBox ID="txttxmemid" runat="server"></asp:TextBox></td></tr><tr><td align="right" colspan="2">Card ID: </td><td>
        <asp:TextBox ID="txttxcardid" runat="server"></asp:TextBox></td></tr><tr><td></td><td align="right">From Date: </td><td><asp:TextBox ID="fromdate" runat="server"></asp:TextBox></td> <ajax:CalendarExtender  ID="CalendarExtender1" 
                    TargetControlID="fromdate"   runat="server" PopupButtonID="calendar" 
                    Format="yyyy-MM-dd" Enabled="True"></ajax:CalendarExtender></td></tr><tr><td></td><td align="right">To Date: </td><td><asp:TextBox ID="todate" runat="server"></asp:TextBox></td> <ajax:CalendarExtender  ID="CalendarExtender2" 
                    TargetControlID="todate"   runat="server" PopupButtonID="calendar" 
                    Format="yyyy-MM-dd" Enabled="True"></ajax:CalendarExtender></td></tr><tr><td><asp:Button 
        ID="btnhistoryok" runat="server" Text="OK" colspan="2" align="center" 
        onclick="btnhistoryok_Click" /></td><td><asp:Button ID="btnhistorycancel" 
                runat="server" Text="Clear" OnClientClick="this.form.reset();return false;" /></td></tr></table></asp:Panel></ContentTemplate></ajax:TabPanel>
<ajax:TabPanel ID="tbpnlprofile"   runat="server" ><HeaderTemplate>Profile Setting</HeaderTemplate><ContentTemplate><asp:Panel ID="profile" runat="server" Width="569px"><table align="center"><tr><td></td><td align="right" ></td><td align="center">Profile Settings </td></tr><tr><td></td><td align="right" >Member ID: </td><td>
    <asp:TextBox ID="txtsettingmemid" runat="server"></asp:TextBox></td></tr><tr><td></td><td align="right" >Card ID: </td><td>
        <asp:TextBox ID="txtsettingcardid" runat="server" ></asp:TextBox></td></tr><tr><td></td><td align="right">Name: </td><td>
        <asp:TextBox ID="txtsettingname" runat="server"></asp:TextBox></td></tr> <tr><td></td><td align="right">Date Of Membership: </td><td>
                
                
 
                
<asp:TextBox ID="txtsettingdate" runat="server"  
       ></asp:TextBox>   </td><td>
                    
 <ajax:CalendarExtender  ID="calendar2" 
                    TargetControlID="txtsettingdate"   runat="server" PopupButtonID="calendar" 
                    Format="yyyy-MM-dd" Enabled="True"></ajax:CalendarExtender></td>
    
                <tr><td></td><td align="right">Opening Balance: </td><td>
                    <asp:TextBox ID="txtsettingopenbal" runat="server"></asp:TextBox></td></tr><tr><td></td><td align="right" >Phone No: </td><td>
            <asp:TextBox ID="txtsettingphone" runat="server"></asp:TextBox></td></tr><tr><td></td><td align="right" >Address: </td><td align="left">
            <asp:TextBox ID="txtsettingaddress" runat="server"></asp:TextBox></td></tr><tr><td></td><td align="right">Password:</td><td align="left">
            <asp:TextBox ID="txtsettingpwd" runat="server"></asp:TextBox></td><td><asp:hyperlink ID="Hyperlink1" runat="server">Edit</asp:hyperlink></td></tr><tr><td></td><td align="right">Confirm Password</td><td align="left">
        <asp:TextBox ID="txtsettingconfirmpwd" runat="server"></asp:TextBox></td></tr></table></asp:Panel></ContentTemplate></ajax:TabPanel>
</ajax:TabContainer>
</div>
    </form>
</body>
</html>

and it's codebehind is:
C#
<pre lang="c#">using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Configuration;
using MySql.Data.MySqlClient;
 
namespace Online_Billing_System
{
    public partial class User : System.Web.UI.Page
    {
 
        String ConnectionString = WebConfigurationManager.ConnectionStrings["myConnectionString"].ToString();
        protected void Page_Load(object sender, EventArgs e)
        {
           
        }
 
        protected void btnbalok_Click(object sender, EventArgs e)
        {
            if (txtusermemid.Text != "" || txtusercardid.Text != "")
                Response.Redirect("~/Balance.aspx?memberid=" + txtusermemid.Text.Replace("&", "%26") +
                    "&cardid=" + txtusercardid.Text.Replace("&", "%26"));
            else
            {
                Response.Write("<script type='text/javascript'>");
                Response.Write("alert('PLEASE ENTER EITHER MEMBER ID or CARD ID');");
                Response.Write("</script>");
 

            }
        }
 
        protected void btnhistoryok_Click(object sender, EventArgs e)
        {
            if (txttxmemid.Text != "" || txttxcardid.Text != "")
                Response.Redirect("~/Transaction.aspx?memberid=" + txttxmemid.Text.Replace("&", "%26") +
                    "&cardid=" + txttxcardid.Text.Replace("&", "%26")+"&fromdate=" +fromdate.Text.Replace("&", "%26") +
                    "&todate=" + todate.Text.Replace("&", "%26"));
            else
            {
                Response.Write("<script type='text/javascript'>");
                Response.Write("alert('PLEASE ENTER DETAILS');");
                Response.Write("</script>");
 

            }
        }
 
        protected void usertabContainer_ActiveTabChanged(object sender, EventArgs e)
        {
             string uname = Request.QueryString["UserName"];
            String password = Request.QueryString["Password"];
 
            if (usertabContainer.ActiveTabIndex == 2)
            {
                using (MySqlConnection con = new MySqlConnection(ConnectionString))
                {
                    String query = "select member_id,card_id,name,date_of_membership,opening_balance,phone_number,address,password,confirm_password from admin where member_id='" + uname + "' ";
                    MySqlCommand command = new MySqlCommand(query, con);
                    con.Open();
                    using (MySqlDataReader rdr = command.ExecuteReader())
                    {
                        if (rdr.Read())
                        {
                            txtsettingmemid.Text = rdr["member_id"].ToString();
                            txtsettingcardid.Text = rdr["card_id"].ToString();
                            txtsettingname.Text = rdr["name"].ToString();
                            txtsettingdate.Text = rdr["date_of_membership"].ToString();
                            txtsettingopenbal.Text = rdr["opening_balance"].ToString();
                            txtsettingphone.Text = rdr["phone_number"].ToString();
                            txtsettingaddress.Text = rdr["address"].ToString();
                            txtsettingpwd.Text = rdr["password"].ToString();
                            txtsettingconfirmpwd.Text = rdr["confirm_password"].ToString();
 
                        }
                    }
                }
            }
        }
 
       
    }
}

Transaction.aspx is:
C#
<pre lang="c#"><pre lang="c#"><%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Transaction.aspx.cs" Inherits="Online_Billing_System.Transaction" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:GridView ID="transactionGridView" runat="server" BackColor="#DEBA84" 
            BorderColor="#DEBA84" BorderStyle="None" BorderWidth="1px" CellPadding="3"  
            CellSpacing="2" 
            >
            <FooterStyle BackColor="#F7DFB5" ForeColor="#8C4510" />
            <HeaderStyle BackColor="#A55129" Font-Bold="True" ForeColor="White" />
            <PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" />
            <RowStyle BackColor="#FFF7E7" ForeColor="#8C4510" />
            <SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="White" />
            <SortedAscendingCellStyle BackColor="#FFF1D4" />
            <SortedAscendingHeaderStyle BackColor="#B95C30" />
            <SortedDescendingCellStyle BackColor="#F1E5CE" />
            <SortedDescendingHeaderStyle BackColor="#93451F" />
        </asp:GridView>
    </div>
    </form>
</body>
</html>

and codebehind for transaction is
C#
<pre lang="c#">using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Configuration;
using MySql.Data.MySqlClient;
 
namespace Online_Billing_System
{
    public partial class Transaction : System.Web.UI.Page
    {
 
        String ConnectionString = WebConfigurationManager.ConnectionStrings["myConnectionString"].ToString();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                String memberid = Request.QueryString["memberid"];
                String cardid = Request.QueryString["cardid"];
                String fromdate = Request.QueryString["fromdate"];
                String todate = Request.QueryString["todate"];
 
                using (MySqlConnection con = new MySqlConnection(ConnectionString))
                {
                    String query = "select member_id,card_id,name,paid_amount,due_amount,paid_date,location,phone_number from transaction where DATE(paid_date)BETWEEN '" + fromdate + "'AND'" + todate + "' ";
                    if (memberid != "")
                    {
                        query = query + " AND " + "member_id=" + "'" + memberid + "' ";
                    }
                    if (cardid != "")
                    {
                        query = query + " OR " + "card_id=" + "'" + cardid + "' ";
 
                    }
                    
 
                    MySqlCommand command = new MySqlCommand(query, con);
                    con.Open();
                    using (MySqlDataReader rdr = command.ExecuteReader())
                    {
                        if (rdr.Read())
                        {
                            transactionGridView.DataSource = rdr;
                            transactionGridView.DataBind();
                            transactionGridView.Visible = true;
                        }
                    }
                }
            }
        }
 
       
    }
}





How to solve it ,am struggling a lot. plz anybody help me...
Posted
Comments
JoCodes 28-Jan-14 0:06am    
Tried with adding columns?
Member 10263519 28-Jan-14 0:13am    
yes, i was tried with adding columns,

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Transaction.aspx.cs" Inherits="Online_Billing_System.Transaction" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="transactionGridView" runat="server" AutoGenerateColumns="False"
>
<columns>
<asp:BoundField DataField="member_id" HeaderText="Member ID" ReadOnly="true" />
<asp:BoundField DataField="card_id" HeaderText="Card ID" />
<asp:BoundField DataField="name" HeaderText="Name" />
<asp:BoundField DataField="paid_amount" HeaderText="Paid Amount" />
<asp:BoundField DataField="due_amount" HeaderText="Due Amount" />
<asp:BoundField DataField="paid_date" HeaderText="Paid Date" />
<asp:BoundField DataField="location" HeaderText="Location" />
<asp:BoundField DataField="phone_number" HeaderText="Phone Number" />


</div>
</form>
</body>
</html>

but its not getting.
JoCodes 28-Jan-14 0:20am    
Ok, A quick test. just try with

<asp:GridView ID="transactionGridView" runat="server" BackColor="#DEBA84"
BorderColor="#DEBA84" BorderStyle="None" BorderWidth="1px" CellPadding="3"
CellSpacing="2"
>
<footerstyle backcolor="#F7DFB5" forecolor="#8C4510">
<HeaderStyle BackColor="#A55129" Font-Bold="True" ForeColor="White" />
<PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" />
<rowstyle backcolor="#FFF7E7" forecolor="#8C4510">
<SelectedRowStyle BackColor="#738A9C" Font-Bold="True" ForeColor="White" />
<sortedascendingcellstyle backcolor="#FFF1D4">
<sortedascendingheaderstyle backcolor="#B95C30">
<sorteddescendingcellstyle backcolor="#F1E5CE">
<sorteddescendingheaderstyle backcolor="#93451F">


Code behind
void Bind()
{
DataTable dt = new DataTable();
dt.Columns.Add("Test1", typeof(int));
dt.Columns.Add("Test2", typeof(string));
dt.Columns.Add("Test3", typeof(string));

dt.Rows.Add("115", "21", "33");
dt.Rows.Add("123", "22", "33");
dt.Rows.Add("123", "22", "33");
grid.DataSource = dt;
grid.DataBind();
}
I tested it and waas displaying
Nobody is going to check the whole code for you. Please narrow down your issue by debugging the code.
Member 10263519 28-Jan-14 0:15am    
everything is executing ,rdr(datareader is showing HasRows=true)but it's not displaying anything even gridview also.

1 solution

First Add some columns to the display the data or set AutoGenerateColumns property to True as per your requirement. And most importantly, Check the DataReader which you are binding with the Gridview contains rows to display.
 
Share this answer
 
Comments
Member 10263519 28-Jan-14 0:25am    
thaks so much i got it..........
JoCodes 28-Jan-14 0:28am    
Welcome, and thanks for the Upvote . May be you can Mark it as Solution if it helped. :)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900