ASP.Net/Development/Code Behind

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Call function in code behind

   <source lang="csharp">

<%@ Page

   language=VB 
   debug=true 
   src="ProcsInCodeBehind.vb" 
   Inherits="clsProcsInCodeBehind" 

%> <script runat=server> Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)

   lblMessage1.Text = "Pi to three digits: " & RoundPI(3)
   lblMessage2.Text = "Circumference of a 4cm Radius Circle: " _
       & CircleCircumference(4)
   lblMessage3.Text = SystemInfo()

End Sub </SCRIPT> <HTML> <HEAD> <TITLE>Creating and Linking to a Code-Behind Files</TITLE> </HEAD> <form runat="server">

<asp:label

   id="lblMessage1"
   runat="Server"

/>

<asp:label

   id="lblMessage2"
   runat="Server"

/>

<asp:label

   id="lblMessage3"
   runat="Server"

/> </form> </BODY> </HTML> <%-- Imports System Public Class clsProcsInCodeBehind

   Inherits System.Web.UI.Page
   Public Function RoundPI(DecimalPlaces as Integer)
       RoundPI = Math.Round(Math.PI, DecimalPlaces)   
   End Function
   Public Function CircleCircumference(TheRadius as Double) _
       as Double
       CircleCircumference = 2 * TheRadius * Math.PI
   End Function
   Public Function SystemInfo()
       SystemInfo = "Machine Name: " & Server.MachineName _
           & "
Current Script Timeout: " _ & Server.ScriptTimeOut & " seconds
Path to Page: " _ & Server.MapPath("") & "
System Date/Time: " _ & Date.Now() End Function

End Class --%>

      </source>
   
  


Code Behind In action

   <source lang="csharp">

<%@ Page Inherits="MyCodeBehind" Src="SimpleCodeBehind.vb" %> <html> <head><title>Simple Code-Behind Page</title></head> <body>

 Please enter your name then click the button below:

<form action="CodeBehind1.aspx" Method="Post" Runat="Server">

 <asp:textbox id="name" runat="Server" />
 <asp:button text="ClickMe!" OnClick="SubmitBtn_Click" runat="server" /> 
  

<asp:label id="message" runat="Server" />

</form> </body> </html> <%-- Imports System Imports System.Web.UI Imports System.Web.UI.WebControls

Public Class MyCodeBehind : Inherits Page

 Public Name as Textbox
 Public Message as Label
 Public Sub SubmitBtn_Click(Sender As Object, E As EventArgs)
   Message.text = "Hello " & Name.Text
 End Sub

End Class

--%>

      </source>
   
  


Code behind with namespace

   <source lang="csharp">

<%@ Page language="vb" src="Codebehind.vb"

  Inherits="aspnetian.CodeBehind" %>

<html> <head></head> <body>

  <form runat="server">

Code-behind demonstration

<asp:label id="message" runat="server"> Enter your name to sign in: </asp:label>

Name:
                 <asp:textbox id="SignInBox" width="200" runat="server"/>
                 <asp:button id="SignInButton" runat="server" text="Sign in"/>

  </form>

</body> </html> <%-- Imports System Imports System.Web Imports System.Web.UI Imports System.Web.UI.WebControls Imports System.Web.UI.HtmlControls Namespace aspnetian Public Class CodeBehind : Inherits System.Web.UI.Page

  Protected Message As Label 
  Protected SignInTable As HtmlTable 
  Protected WithEvents SignInButton As Button 
  Protected SignInBox As TextBox
  Protected Sub Page_Load(sender As Object, e As EventArgs)
     If Page.IsPostBack Then
        Message.Text = "Time is: " & DateTime.Now() & "
" & Message.Text End If End Sub Protected Sub SignInButton_Click(obj As Object, e As EventArgs ) Handles SignInButton.Click Message.Text = "Congratulations, " & SignInBox.Text & _ "!!! You have successfully signed in." SignInTable.Visible = false End Sub

End Class End Namespace --%>

      </source>
   
  


Define and use namespace in code behind

   <source lang="csharp">

<%@ Page language="c#" src="CookieExample.aspx.cs" AutoEventWireup="false" Inherits="YourNamespace.CookieExample" %> <HTML>

 <body>
   <form id="Form1" method="post" runat="server">
     <asp:Label id="lblWelcome" style="Z-INDEX: 100; LEFT: 16px; POSITION: absolute; TOP: 24px"
       runat="server" Width="412px" Height="130px" BackColor="LightYellow" Font-Size="Medium"
       Font-Names="Verdana" BorderWidth="2px" BorderStyle="Groove"></asp:Label>
     <asp:Button id="Button1" style="Z-INDEX: 105; LEFT: 288px; POSITION: absolute; TOP: 264px" runat="server"
       Width="137px" Text="Submit Page"></asp:Button>
     <asp:TextBox id="txtName" style="Z-INDEX: 101; LEFT: 96px; POSITION: absolute; TOP: 200px" runat="server"
       Width="184px" Height="24px"></asp:TextBox>
     <asp:Button id="cmdStore" style="Z-INDEX: 103; LEFT: 288px; POSITION: absolute; TOP: 200px"
       runat="server" Width="137px" Text="Create Cookie"></asp:Button>
     <asp:Label id="Label1" style="Z-INDEX: 104; LEFT: 24px; POSITION: absolute; TOP: 204px" runat="server"
       Width="56px" Height="16px" Font-Size="X-Small" Font-Names="Verdana">Name:</asp:Label>
   </form>
 </body>

</HTML> <%-- using System; using System.Collections; using System.ruponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Net; namespace YourNamespace {

 /// <summary>
 /// Summary description for CookieExample.
 /// </summary>
 public class CookieExample : System.Web.UI.Page
 {
   protected System.Web.UI.WebControls.Label lblWelcome;
   protected System.Web.UI.WebControls.TextBox txtName;
   protected System.Web.UI.WebControls.Button cmdStore;
   protected System.Web.UI.WebControls.Button Button1;
   protected System.Web.UI.WebControls.Label Label1;
 
   private void Page_Load(object sender, System.EventArgs e)
   {
     HttpCookie cookie = Request.Cookies["Preferences"];
     if (cookie == null)
     {
       lblWelcome.Text = "Unknown Customer";
     }
     else
     {
       lblWelcome.Text = "Cookie Found.

"; lblWelcome.Text += "Welcome, " + cookie["Name"]; } } #region Web Form Designer generated code override protected void OnInit(EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); base.OnInit(e); } /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.cmdStore.Click += new System.EventHandler(this.cmdStore_Click); this.Load += new System.EventHandler(this.Page_Load); } #endregion private void cmdStore_Click(object sender, System.EventArgs e) { HttpCookie cookie = Request.Cookies["Preferences"]; if (cookie == null) { cookie = new HttpCookie("Preferences"); } cookie["Name"] = txtName.Text; cookie.Expires = DateTime.Now.AddYears(1); Response.Cookies.Add(cookie); lblWelcome.Text = "Cookie Created."; lblWelcome.Text += "New Customer: " + cookie["Name"]; } }

} --%>

      </source>
   
  


Define two page classes in one code behind file

   <source lang="csharp">

<%@ Page

   language=VB 
   debug=true 
   src="ManyCodeBehind.vb" 
   Inherits="clsMany1CodeBehind" 

%> <HTML> <HEAD> <TITLE>Creating Code-Behind Files Used by Many ASP.NET Pages</TITLE> </HEAD> <form runat="server">

<asp:label

   id="lblMessage1"
   runat="Server"

/>

</form> </BODY> </HTML> <%-- Imports System Public Class clsMany1CodeBehind

   Inherits System.Web.UI.Page
   Protected WithEvents lblMessage1 As _
       System.Web.UI.WebControls.Label
   Private Sub Page_Init(ByVal sender As System.Object, _
       ByVal e As System.EventArgs)
       lblMessage1.Text = "1"
   End Sub

End Class Public Class clsMany2CodeBehind

   Inherits System.Web.UI.Page
   Protected WithEvents lblMessage1 As _
       System.Web.UI.WebControls.Label
   Private Sub Page_Init(ByVal sender As System.Object, _
       ByVal e As System.EventArgs)
       lblMessage1.Text = "2"
   End Sub

End Class --%>

      </source>