Monday, August 29, 2016

ASP.NET Page Life Cycle Events

ASP.NET Page Life Cycle Events

At each stage of the page life cycle, the page raises some events, which could be coded. An event handler is basically a function or subroutine, bound to the event, using declarative attributes such as Onclick or handle.

Following are the page life cycle events:

PreInit - PreInit is the first event in page life cycle. It checks the IsPostBack property and determines whether the page is a postback. It sets the themes and master pages, creates dynamic controls, and gets and sets profile property values. This event can be handled by overloading the OnPreInit method or creating a Page_PreInit handler.

Init - Init event initializes the control property and the control tree is built. This event can be handled by overloading the OnInit method or creating a Page_Init handler.

InitComplete - InitComplete event allows tracking of view state. All the controls turn on view-state tracking.

LoadViewState - LoadViewState event allows loading view state information into the controls.

LoadPostData - During this phase, the contents of all the input fields are defined with the <form> tag are processed.

PreLoad - PreLoad occurs before the post back data is loaded in the controls. This event can be handled by overloading the OnPreLoad method or creating a Page_PreLoad handler.

Load - The Load event is raised for the page first and then recursively for all child controls. The controls in the control tree are created. This event can be handled by overloading the OnLoad method or creating a Page_Load handler.

LoadComplete - The loading process is completed, control event handlers are run, and page validation takes place. This event can be handled by overloading the OnLoadComplete method or creating a Page_LoadComplete handler

PreRender - The PreRender event occurs just before the output is rendered. By handling this event, pages and controls can perform any updates before the output is rendered.

PreRenderComplete - As the PreRender event is recursively fired for all child controls, this event ensures the completion of the pre-rendering phase.

SaveStateComplete - State of control on the page is saved. Personalization, control state and view state information is saved. The HTML markup is generated. This stage can be handled by overriding the Render method or creating a Page_Render handler.

UnLoad - The UnLoad phase is the last phase of the page life cycle. It raises the UnLoad event for all controls recursively and lastly for the page itself. Final cleanup is done and all resources and references, such as database connections, are freed. This event can be handled by modifying the OnUnLoad method or creating a Page_UnLoad handler.

DateTime.DaysInMonth(1980, 08);

How to get last day of the month in c#

DateTime.DaysInMonth(1980, 08);

Friday, July 31, 2015

How to Access MasterPage Control Property in Content Page

Create object for control in content page which you want to access and initialize it like this

TextBox l =(TextBox) this.Master.FindControl("TextBox1");
//here Textbox1 is id which is in master page

Label1.Text = l.Text;
//Label1 is in content page which get the text from master page
       
l.Text = "Done...";
//set some text to control which is in MastePage

Tuesday, May 26, 2015

what is wizard control in asp.net

The Wizard control is a complex control that is used to display a series of Wizard Step
controls to a user, one after the other, as part of a user input process.

The built-in navigation capabilities determine which buttons are displayed based on the
Step Type value. The Base Wizard Step class contains the Step Type property that can be set to
one of the following values:

Wizard Step Type. Auto
This renders navigation buttons based on the location of the set within the Wizard Steps collection property of the Wizard. This is the default.

Wizard Step Type. Complete 
This is the last step to appear. No navigation buttons are rendered.

Wizard Step Type .Finish 
This is the final data collection step; the Finish and Previous buttons are rendered for navigation.

Wizard Step Type. Start 
This is the first one to appear, and only the Next button is rendered.

Wizard Step Type. Step 
This is a step between the Start and the Finish steps.The Previous and Next buttons are rendered.


<asp:Wizard ID="Wizard1" runat="server" ActiveStepIndex="4" OnFinishButtonClick="Wizard1_FinishButtonClick" BorderColor="Black" BorderStyle="Solid">
                <WizardSteps>
                    <asp:WizardStep runat="server" Title="Step 1">
                        welcome to wizard control
                    </asp:WizardStep>
                    <asp:WizardStep runat="server" Title="Step 2">
                        Enter first name<br />
                        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                    </asp:WizardStep>
                    <asp:WizardStep runat="server" Title="Step 3">
                        Enter Last Name<br />
                        <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
                    </asp:WizardStep>
                    <asp:WizardStep runat="server" Title="Step 4">
                        Enter Hobbies<br />
                        <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
                    </asp:WizardStep>
                    <asp:WizardStep runat="server" Title="Step 5">
                        You are complite
                    </asp:WizardStep>
                </WizardSteps>
            </asp:Wizard>





    protected void Wizard1_FinishButtonClick(object sender, WizardNavigationEventArgs e)
    {
        Response.Write(TextBox1.Text);
    }

how to display Advertisement in AdRotator in asp.net

create .xml file and add code like below

<Advertisements>
   <Ad>
      <ImageUrl>rose1.jpg</ImageUrl>
      <NavigateUrl>http://www.1800flowers.com</NavigateUrl>
      <AlternateText>
         Order flowers, roses, gifts and more
      </AlternateText>
      <Impressions>20</Impressions>
      <Keyword>flowers</Keyword>
   </Ad>

   <Ad>
      <ImageUrl>rose2.jpg</ImageUrl>
      <NavigateUrl>http://www.babybouquets.com.au</NavigateUrl>
      <AlternateText>Order roses and flowers</AlternateText>
      <Impressions>20</Impressions>
      <Keyword>gifts</Keyword>
   </Ad>

   <Ad>
      <ImageUrl>rose3.jpg</ImageUrl>
      <NavigateUrl>http://www.flowers2moscow.com</NavigateUrl>
      <AlternateText>Send flowers to Russia</AlternateText>
      <Impressions>20</Impressions>
      <Keyword>russia</Keyword>
   </Ad>

   <Ad>
      <ImageUrl>rose4.jpg</ImageUrl>
      <NavigateUrl>http://www.edibleblooms.com</NavigateUrl>
      <AlternateText>Edible Blooms</AlternateText>
      <Impressions>20</Impressions>
      <Keyword>gifts</Keyword>
   </Ad>
</Advertisements>




take adrotator control from toolbox in .aspx file

<asp:AdRotator ID="AdRotator1" runat="server" AdvertisementFile="~/XMLFile.xml" Height="200px" Width="200px" />

Tuesday, May 19, 2015

store image in database with image type and read image from database and display in gridview

.aspx file

        name<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <br />
        imagef<asp:FileUpload ID="FileUpload1" runat="server" />
        <br />
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" />
        <br />
        <br />
        <br />
       
        <asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False">
            <Columns>
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:Label ID="Label1" runat="server" Text='<%# Bind("id") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:Label ID="Label2" runat="server" Text='<%# Bind("name") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField>
                    <ItemTemplate>
                        <a href='<%# string.Concat("/DisplayImg.ashx?id=", Eval("id"))%>' download='<%# string.Concat("",Eval("name")) %>'>
                        <asp:Image ID="Image1" runat="server" Height="46px" Width="97px" ImageUrl='<%# string.Concat("~/DisplayImg.ashx?id=", Eval("id"))%>'/>
                            </a>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField HeaderText="Download">
                    <ItemTemplate>
                        <a href='<%# string.Concat("/DisplayImg.ashx?id=", Eval("id"))%>' download="file">Download</a>
                    </ItemTemplate>
                </asp:TemplateField>
            </Columns>

        </asp:GridView>


.aspx.cs

BAL b = new BAL();
protected void Page_Load(object sender, EventArgs e)
    {
        GridView2.DataSource = b.bindempl();
        GridView2.DataBind();
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        Byte[] imgByte = null;
        if (FileUpload1.HasFile && FileUpload1.PostedFile != null)
        {
            HttpPostedFile File = FileUpload1.PostedFile;
            imgByte = new Byte[File.ContentLength];
            File.InputStream.Read(imgByte, 0, File.ContentLength);
            b.name = TextBox1.Text;
            b.imgbyte = imgByte;
            b.saveempl(b);

            GridView2.DataSource = b.bindempl();
            GridView2.DataBind();
        }
    }



DisplayImg.ashx

<%@ WebHandler Language="C#" Class="DisplayImg" %>

using System;
using System.Web;
using System.IO;

public class DisplayImg : IHttpHandler {
    BAL b = new BAL();
    public void ProcessRequest (HttpContext context)
    {
        Int32 theID;
        if (context.Request.QueryString["id"] != null)
            theID = Convert.ToInt32(context.Request.QueryString["id"]);
        else
            throw new ArgumentException("No parameter specified");

        context.Response.ContentType = "image/jpeg";
        Stream strm = b.DisplayImage(theID);
        byte[] buffer = new byte[2048];
        int byteSeq = strm.Read(buffer, 0, 2048);

        while (byteSeq > 0)
        {
            context.Response.OutputStream.Write(buffer, 0, byteSeq);
            byteSeq = strm.Read(buffer, 0, 2048);
        }
    }

    public bool IsReusable {
        get {
            return false;
        }
    }

}

BAL.cs
public class BAL:DAL
{
       public BAL()
       {
              //
              // TODO: Add constructor logic here
              //
       }

    //file in db
    public int id1 { get; set; }
    public string name { get; set; }
    public byte[] imgbyte { get; set; }


   
}
DAL.cs


public Stream DisplayImage(int theID)
    {
        string sql = "SELECT image FROM empl WHERE id = @ID";
        SqlCommand cmd = new SqlCommand(sql, con);
        cmd.CommandType = CommandType.Text;
        cmd.Parameters.AddWithValue("@ID", theID);
        con.Open();
        object theImg = cmd.ExecuteScalar();
        try
        {
            return new MemoryStream((byte[])theImg);
        }
        catch
        {
            return null;
        }
        finally
        {
            con.Close();
        }
    }

    public DataSet bindempl()
    {
        cmd = new SqlCommand("select * from empl", con);
        cmd.CommandType = CommandType.Text;
        da = new SqlDataAdapter(cmd);
        ds = new DataSet();
        da.Fill(ds);
        return ds;
    }