Tuesday, January 29, 2013

Enter only Numeric Data in TextBox


private void TxtQuantity_KeyPress(object sender, KeyPressEventArgs e)
        {
if (char.IsDigit(e.KeyChar) == false && char.IsLetter(e.KeyChar) == false && char.IsControl(e.KeyChar) == false && e.KeyChar != '.' && e.KeyChar != ' ')
            {
                e.Handled = true;
                MessageBox.Show("You can enter only number.", "KenCloud", MessageBoxButtons.OK, MessageBoxIcon.Information);
                TxtQuantity.Clear();
                TxtQuantity.Focus();
                return;
            }
}

Enter only Numeric data in Datagridview in c#


private void DgviewStock_CellEndEdit(object sender, System.Windows.Forms.DataGridViewCellEventArgs e)
        {
            if ((e.ColumnIndex == 10))
            {
                string value = DgviewStock.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
                foreach (char c in value)
                {
                    if (!char.IsDigit(c))
                    {
                        MessageBox.Show("Please enter numeric value.");
                        DgviewStock.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = string.Empty;
                        return;
                    }
                }
            }
        }

Common Report Viewer for All CrystalReport


namespace Barcodes.Reports
{
    public partial class frmReportViewer : Form
    {
        public string paramvalue;
        public int reportFlag,paramvalueId;

        public frmReportViewer( )
        {
            InitializeComponent();
       
        }

        private void frmReportViewer_Load(object sender, EventArgs e)
        {

            TAGGING_CommonVariable objVar = new TAGGING_CommonVariable();
            objVar.servername = @"SATYA";
            objVar.DatabaseName = "Admission";
            objVar.username = "sa";
            objVar.password = "sql";        

            if (reportFlag == 0)//IssueToQualityControl
            {
                crReport objCr = new crReport();               
                CrystalDecisions.Shared.TableLogOnInfo tliCurrent = default(CrystalDecisions.Shared.TableLogOnInfo);
                try
                {
                    foreach (CrystalDecisions.CrystalReports.Engine.Table tbCurrent in objCr.Database.Tables)
                    {
                        tliCurrent = tbCurrent.LogOnInfo;
                        var _with1 = tliCurrent.ConnectionInfo;
                        _with1.ServerName = objVar.servername;
                        _with1.DatabaseName = objVar.DatabaseName;                      
                        _with1.UserID = objVar.username;
                        _with1.Password = objVar.password;
                        _with1.IntegratedSecurity = false;
                        tbCurrent.ApplyLogOnInfo(tliCurrent);
                    }

                    this.crystalReportViewerAll.ReportSource = objCr;
                    objCr.SetParameterValue(0, paramvalue);
                    objCr.SetParameterValue(1, paramvalueId);
                    crystalReportViewerAll.Show();

                }                 

                catch
                {
                }

            }
             }
}

Case sensitive for Sql select in Sql Server



Create PROCEDURE  SelectDetails
(
@Name varchar(30)
)
AS
BEGIN

    if (select name from  Student where Name=@Name ) is NULL
begin

SELECT       Name, Age ,Address    FROM   Student where Name=@Name
COLLATE  SQL_Latin1_General_CP1_CS_AS

        end

Thursday, August 23, 2012

AJAX Modal PopUp Extender Example in ASP.Net


  Modal PopUp extender is very useful to restrict user to interact with the main page and without leaving the main page we can consider the popup as child page for our necessary requirement....

 

 Design View :-

   <head runat="server">
    <title></title>
    <style type="text/css">      
        .ModalBackgroundCSS
        {
            position: absolute;
            z-index: 100;
            top: 0px;
            left: 0px;
            background-color: #000;
            filter: alpha(opacity=60);
            -moz-opacity: 0.6;
            opacity: 0.6;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
    <div>
        <asp:Button ID="BtnPopUp" runat="server" Text="Open PopUp" OnClick="BtnPopUp_Click" />
    </div>
    <asp:Panel ID="PanelModalPopUp" BackColor="Aqua" runat="server" Height="150px" Width="500px"
        CssClass="ModalPopUpPanel">
        <table class="style1">
            <tr>
                <td style="text-align: right" width="40%">
                    <asp:Label ID="Label1" runat="server" Text="Name"></asp:Label>
                </td>
                <td width="60%">
                    <asp:TextBox ID="TxtName" runat="server" Width="210px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td style="text-align: right">
                    <asp:Label ID="Label2" runat="server" Text="Father's Name"></asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="TxtFartherName" runat="server" Width="210px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td style="text-align: right">
                    <asp:Label ID="Label3" runat="server" Text="Address"></asp:Label>
                </td>
                <td>
                    <asp:TextBox ID="TxtAddress" runat="server" Width="210px"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>
                    &nbsp;
                </td>
                <td>
                    <asp:Button ID="BtnSave" runat="server" OnClick="BtnSave_Click" Text="Save" Width="61px" />
                    <asp:Button ID="BtnCancel" runat="server" OnClick="BtnCancel_Click" Text="Cancel" />
                </td>
            </tr>
        </table>
    </asp:Panel>
    <asp:ModalPopupExtender ID="PanelModalPopUp_ModalPopupExtender" PopupControlID="PanelModalPopUp"
        TargetControlID="Button1" CancelControlID="BtnCancel" runat="server" DynamicServicePath=""
        Enabled="True" BackgroundCssClass="ModalBackgroundCSS">
    </asp:ModalPopupExtender>
    <asp:Button ID="Button1" runat="server" Text="extra Button" Style="display: none" />
    </form>
</body>


C# Code :-

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class Projects_Ajax_ModalPopUpExtender : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void BtnPopUp_Click(object sender, EventArgs e)
    {
        PanelModalPopUp_ModalPopupExtender.Show();
    }
    protected void BtnSave_Click(object sender, EventArgs e)
    {
        //Add Own logic here
    }
    protected void BtnCancel_Click(object sender, EventArgs e)
    {

    }
}



Wednesday, August 22, 2012

Insert Multiple record into DataBase from GridView using DataTable and Type concept in Sql Server



   In this article I have done a new concept . It accepts inputs from user and show it in a GridView then insert all records into table using the "Type" concept of Sql server

Step:1
Design the Table (Student Details)

 


Step:2
Create a Type  for Student Details in your Sql Server query Window

create type  Type_Studentdetails       
as  table
(
Name varchar(50),
FatherName varchar(50),
Address varchar(50),
Age int
)

Nb: here i have not taken ID because is is auto identity

Step:3
Create a Stored Procedure  for Student Details


CREATE PROCEDURE SP_AddStudentDetails
(
@P_DataTableStudentDetails AS Type_Studentdetails  READONLY
)
 as
 begin
   insert into StudentDetails ( Name ,FatherName,Address ,Age )
   select Name ,FatherName,Address ,Age from @P_DataTableStudentDetails
   WHERE 
    Name NOT IN (select Name from StudentDetails )
 end

Step:4
Design the page as per requirement



<table class="style1">
        <tr>
            <td style="text-align: right" width="40%">
                <asp:Label ID="Label1" runat="server" Text="Name"></asp:Label>
            </td>
            <td width="60%">
                <asp:TextBox ID="TxtName" runat="server" Width="210px"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td style="text-align: right">
                <asp:Label ID="Label2" runat="server" Text="Father's Name"></asp:Label>
            </td>
            <td>
                <asp:TextBox ID="TxtFartherName" runat="server" Width="210px"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td style="text-align: right">
                <asp:Label ID="Label3" runat="server" Text="Address"></asp:Label>
            </td>
            <td>
                <asp:TextBox ID="TxtAddress" runat="server" Width="210px"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td style="text-align: right">
                <asp:Label ID="Label4" runat="server" Text="Age" Width="210px"></asp:Label>
            </td>
            <td>
                <asp:TextBox ID="TxtAge" runat="server" Width="210px"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td>
                &nbsp;
            </td>
            <td>
                <asp:Button ID="BtnAddtoList" runat="server" Text="Add to List" OnClick="BtnAddtoList_Click" />
                <asp:Button ID="BtnSave" runat="server" OnClick="BtnSave_Click" Text="Save" Width="61px" />
                <asp:Button ID="BtnCancel" runat="server" OnClick="BtnCancel_Click" Text="Cancel" />
            </td>
        </tr>
        <tr>
            <td colspan="2" align="center">
                <asp:GridView ID="GvDetails" runat="server" Width="60%" OnRowCommand="GvDetails_RowCommand"
                    OnRowDeleting="GvDetails_RowDeleting" OnRowEditing="GvDetails_RowEditing">
                    <Columns>
                        <asp:TemplateField HeaderText="Edit">
                            <ItemTemplate>
                                <asp:LinkButton ID="LnkEdit" runat="server" CommandName="Edit">Edit</asp:LinkButton>
                            </ItemTemplate>
                        </asp:TemplateField>
                        <asp:TemplateField HeaderText="Delete">
                            <ItemTemplate>
                                <asp:LinkButton ID="LnkDelete" runat="server" CommandName="Delete">Delete</asp:LinkButton>
                            </ItemTemplate>
                        </asp:TemplateField>
                    </Columns>
                </asp:GridView>
            </td>
        </tr>
       <tr>
            <td>
                <asp:Label ID="Label5" runat="server" Text=""></asp:Label>
            </td>
        </tr>
    </table>

Step:5
Declare connection in web.config file

<connectionStrings>
            <add name="MyDBConnection" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\MyDatabase.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
    </connectionStrings>
  

Step:6
C# Code

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Configuration;
using System.Data.SqlClient;

public partial class Projects_GridView_GridViewInsert : System.Web.UI.Page
{
    # region Methods
    DataTable dt;
    static int flag;
    static int dtflag = 0;
    static int rowno = 0;
    SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyDBConnection"].ConnectionString);
    SqlCommand cmd= new SqlCommand();
    # endregion

    # region Methods
    public DataTable CreateDataTable()
    {
        dt = new DataTable();
        dt.Columns.Add("Name", typeof(string));
        dt.Columns.Add("Father's Name", typeof(string));
        dt.Columns.Add("Address", typeof(string));
        dt.Columns.Add("Age", typeof(string));
        //............ we can add more columns as per our requirement
        ViewState["datatable"] = dt;
        return dt;

    }
    private void FillGridView()
    {
        dt = new DataTable();
        dt = (DataTable)ViewState["datatable"];
        if (dt.Rows.Count > 0)
        {
            GvDetails.DataSource = dt;
            GvDetails.DataBind();
        }
        else
        {
            GvDetails.Dispose();
            GvDetails.DataBind();
        }
    }
    public DataTable InnerData()
    {
        CreateDataTable();
        DataRow dr;
        foreach (GridViewRow row in GvDetails.Rows)
        {
            dr = dt.NewRow();
            dr[0] = row.Cells[2].Text;
            dr[1] = row.Cells[3].Text;
            dr[2] = row.Cells[4].Text;
            dr[3] = row.Cells[5].Text;           
            dt.Rows.Add(dr);
        }
        ViewState["datatable"] = dt;
        FillGridView();
        return dt;
    }
    # endregion

    # region Events
    protected void Page_Load(object sender, EventArgs e)
    { 
        con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyDBConnection"].ConnectionString);  
        if (IsPostBack == false)
        {                 
            CreateDataTable();
        }
    }  
    protected void BtnAddtoList_Click(object sender, EventArgs e)
    {
        dt = new DataTable();
        dt = (DataTable)ViewState["datatable"];
        DataRow dr;
        if (dtflag == 0)
        {

            dr = dt.NewRow();
            dr[0] = TxtName.Text;
            dr[1] = TxtFartherName.Text;
            dr[2] = TxtAddress.Text;
            dr[3] = TxtAge.Text;
            dt.Rows.Add(dr);
          
        }
        else if (dtflag == 1)
        {
            dt.Rows[rowno][0] = TxtName.Text;
            dt.Rows[rowno][1] = TxtFartherName.Text;
            dt.Rows[rowno][2] = TxtAddress.Text;
            dt.Rows[rowno][3] = TxtAge.Text;
            dtflag = 0;
        }
        ViewState["datatable"] = dt;
        FillGridView();
    }
    protected void GvDetails_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        LinkButton lk = (LinkButton)e.CommandSource;
        GridViewRow gr = (GridViewRow)lk.NamingContainer;
        dt = new DataTable();
        dt = (DataTable)ViewState["datatable"];
        if (e.CommandName == "Edit")
        {
            rowno = gr.RowIndex;
            TxtName.Text = GvDetails.Rows[rowno].Cells[2].Text;
            TxtFartherName.Text = GvDetails.Rows[rowno].Cells[3].Text;
            TxtAddress.Text = GvDetails.Rows[rowno].Cells[4].Text;
            TxtAge.Text = GvDetails.Rows[rowno].Cells[5].Text;          
            dtflag = 1;
        }
        if (e.CommandName == "Delete")
        {
            rowno = gr.RowIndex;
            dt.Rows.RemoveAt(rowno);
            ViewState["datatable"] = dt;
            FillGridView();
        }
    }
    protected void GvDetails_RowEditing(object sender, GridViewEditEventArgs e)
    {

    }
    protected void GvDetails_RowDeleting(object sender, GridViewDeleteEventArgs e)
    {

    }
    protected void BtnSave_Click(object sender, EventArgs e)
    {
        try
        {
            dt = new DataTable();
            dt = (DataTable) ViewState["datatable"];
            cmd.Connection = con;
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandText = "SP_AddStudentDetails";         
            cmd.Parameters.AddWithValue("@P_DataTableStudentDetails",dt);
            con.Open();
            cmd.ExecuteNonQuery();
            con.Close();
            Label5.Text = "Insert Successfull...........";
        }
        catch (Exception ex)
        {
             Label5.Text=ex.Message.ToString();
        }

    }
    protected void BtnCancel_Click(object sender, EventArgs e)
    {
        TxtName.Text = "";
        TxtFartherName.Text = "";
        TxtAddress.Text = "";
        TxtAge.Text = "";
        ViewState["datatable"] = null;
        GvDetails.DataSource = null;
        GvDetails.DataBind();
        CreateDataTable();
    }
    # endregion
}


Friday, August 17, 2012

How to check all CheckBox inside a GridView in ASP.net using JQuery









Write the code in ASPX page:-

 <script src="../../Scripts/jquery-1.7.1.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
    function SelectAllCheckboxes(chk) {
        $('#<%=GvLedgers.ClientID %>').find("input:checkbox").each(function () {
            if (this != chk) {
                this.checked = chk.checked;
            }
        });
    }
</script>

  GridView Design :-


<asp:GridView ID="GvLedgers" runat="server" AutoGenerateColumns="False">
                    <Columns>
                        <asp:BoundField HeaderText="Ledger"   DataField="Ledger_Name" />
                        <asp:TemplateField>
                            <HeaderTemplate>
                                <asp:CheckBox ID="ChkHeader" runat="server" onclick="javascript:SelectAllCheckboxes(this);" />
                            </HeaderTemplate>
                            <ItemTemplate>                               
                                <asp:CheckBox ID="ChkLedger" runat="server" />
                            </ItemTemplate>
                        </asp:TemplateField>
                    </Columns>
                </asp:GridView>