Visual?C#?Web?應用程序示例主題(一)(MSDN整理)

1.代碼:在運行時添加控制項 (Visual C#)

本示例在運行時將文本框和按鈕添加到 Web 窗體頁。它還將事件處理程序動態綁定到按鈕的 Click 事件。該處理程序會顯示動態生成的文本框的值。

這些控制項被添加到 Panel Web 伺服器控制項中,該控制項是一個佔位符。在面板中使用分行符(HTML元素)來分隔這些控制項,它們被添加到使用 LiteralControl 控制項的面板中。

示例:

private void Page_Load(object sender, System.EventArgs e){ if (!IsPostBack) AddControls();}protected override void LoadViewState(object savedState){ base.LoadViewState(savedState); if (ViewState["controsladded"] == null) AddControls();}private void AddControls(){ TextBox dynamictextbox = new TextBox(); dynamictextbox.Text = "(Enter some text)"; dynamictextbox.ID = "dynamictextbox"; Button dynamicbutton = new Button(); dynamicbutton.Click += new System.EventHandler(dynamicbutton_Click); dynamicbutton.Text = "Dynamic Button"; Panel1.Controls.Add(dynamictextbox); Panel1.Controls.Add(new LiteralControl("")); Panel1.Controls.Add(new LiteralControl("")); Panel1.Controls.Add(dynamicbutton); ViewState["controlsadded"] = true;}private void dynamicbutton_Click(Object sender, System.EventArgs e){ TextBox tb = new TextBox(); tb = (TextBox) (Panel1.FindControl("dynamictextbox")); Label1.Text = tb.Text;}

編譯代碼-----》本示例需要: Web 窗體頁。 稱作 Panel1 的 Panel 控制項。 稱作 Label1 的 Label 控制項。

2.代碼:將項添加到列表控制項 (Visual C#)

本示例使用 ListBox.Items 屬性的 Add 方法向列表中添加項。

示例:

// Create a string array and assign items.string[] ListContents = {"Enju", "Sue", "Mary"};// Add the array items to the list box.for (int i = 0; i <= ListContents.Length - 1; i++) ListBox1.Items.Add(ListContents[i]);

編譯代碼------》啟動新的 ASP.NET Web 應用程序並執行以下操作:

------》添加名為 ListBox1 的列表框。

------》複製代碼並將其粘貼到 Page_Load 方法中。

3.代碼:檢測瀏覽器的版本 (Visual C#)

本示例將檢查 Request.Browser 屬性以確定客戶端 Web 瀏覽器的類型和版本。通過 Request.Browser 屬性還可以訪問瀏覽器的其他許多屬性,如 UrlServerVariablesUser

示例:HttpBrowserCapabilities brObject = Request.Browser;// Display the type and version.Response.Write("Browser Type: "+ brObject.Type);Response.Write("

"+"Browser Version: "+ brObject.Version);

編譯代碼-----》啟動新的 ASP.NET Web 應用程序並將代碼粘貼到 Page_Load 方法中。

4.代碼:確定列表控制項中所選的項 (Visual C#)

本示例使用列表控制項的 SelectedIndexSelectedItem 屬性訪問有關所選項的信息。

示例:

// The index:int ListItemIndex;// Value of the item:string ListItemValue;ListItemIndex = ListBox1.SelectedIndex;ListItemValue = ListBox1.SelectedItem.Value.ToString();

編譯代碼-----》啟動新的 ASP.NET Web 應用程序並執行以下操作:

添加名為 ListBox1 的列表框並在其中填充項。

複製代碼並將其粘貼到 Page_Load 方法中。

5.代碼:顯示 Web 窗體 DataGrid 控制項中的數據 (Visual C#)

本示例使用 DataBind 方法將數據集的內容綁定到 DataGrid 控制項。

示例:

if (!IsPostBack){ sqlDataAdapter1.Fill(dataSet11); DataGrid1.DataBind();}

編譯代碼

本示例需要:

  • Web 窗體頁。
  • 名為 DataGrid1DataGrid 控制項。
  • 名為 dataSet11 的類型化數據集,該數據集是類型化數據集類 DataSet1 的實例。
  • 正確配置的名為 sqlDataAdapter1 的數據適配器。可以將 DataGrid 控制項綁定到任何 Web 窗體頁數據源。
  • 應用程序必須具有訪問資料庫的許可權。
  • 6.代碼:將數據從一個 Web 窗體頁傳遞到另一個 Web 窗體頁 (Visual C#)

    本示例保存會話狀態中的信息並定位到同一應用程序中的另一頁,然後在第二頁中檢索存儲的信息。

    示例:

    // First part: Saves info on first page. string firstName = "John"; string lastName = "Smith"; string city = "Seattle"; Session.Add("First", firstName); Session.Add("Last", lastName); Session.Add("City", city); // Redirect to second page. Server.Transfer("WebForm2.aspx"); // Second part: Reads info into variables on the second page. string firstName = (string)(Session["First"]); string lastName = (string)(Session["Last"]); string city = (string)(Session["City"]);

    編譯代

  • 啟動具有兩個 Web 窗體頁(WebForm1.aspx 和 WebForm2.aspx)的 ASP.NET 應用程序。
  • 將代碼的第一部分粘貼到 WebForm1.aspx 的 Page_Load 方法(或 Click 方法)中。
  • 將代碼的第二部分粘貼到 WebForm2.aspx Page_Load 方法中。
  • 7.代碼:讀取 Cookie (Visual C#)

    下面示例使用 HttpCookie 類及其屬性讀取具有特定名稱的 Cookie。

    示例:

    HttpCookie myCookie = new HttpCookie("MyTestCookie"); myCookie = Request.Cookies["MyTestCookie"]; // Read the cookie information and display it. if (myCookie != null) Response.Write(""+ myCookie.Name + ""+ myCookie.Value); else Response.Write("not found");

    編譯代 -----》啟動新的 ASP.NET Web 應用程序並將代 粘貼到 Page_Load 方法中。

    8.代 :讀取應用程序狀態中的值 (Visual C#)

    本示例從 HttpApplicationState 對象檢索值。

    示例:

    string appMsg; appMsg = (string)(Application["Message"]);

    編譯代 -----》啟動新的 ASP.NET 應用程序並將代 粘貼到 Page_Load 方法中。

    可 編程-----》

    必須將數據轉換成適當的類型(如此例中所示)。如果嘗試從不存在的應用程序狀態中獲取值,則不會引發任何異常。若要確保所需的值在應用程序狀態中,請首先使用測試(例如以下測試)檢查該對象是否存在:

    if (Application["Message"] == null) Response.Write("No such value in application state.");

    9.代 :讀取會話狀態中的值 (Visual C#)

    本示例訪問 HttpSessionState.Item 屬性來檢索處於會話狀態的值。

    示例:

    string firstName = (string)(Session["First"]); string lastName = (string)(Session["Last"]); string city = (string)(Session["City"]);

    編譯代 -----》啟動新的 ASP.NET 應用程序並將代 粘貼到 Page_Load 方法中。

    可 編程-----》

    會話值的類型為 Object。讀取它們時應將其轉換成適當的類型。

    如果嘗試從不存在的會話狀態中獲取值,則不會引發任何異常。若要確保所需的值在會話狀態中,請首先使用測試(例如以下測試)檢查該對象是否存在:

    if (Session["City"] == null) Response.Write("No such value in session state.");

    10.代 :從視圖狀態中讀取值 (Visual C#)

    本示例將值 "yellow" 保存到 Control.ViewState 屬性中,然後當該頁回發到伺服器時檢索該屬性的值。有關 ViewState 的更多信息,請參見使用視圖狀態保存 Web 窗體頁值。

    示例:

    string strColor; if (Page.IsPostBack) { // Retrieve and display the property value. strColor = (string)ViewState["color"]; Response.Write(strColor); } else // Save the property value. ViewState["color"] = "yellow";

    編譯代 -----》複製代 並將其粘貼至 ASP.NET Web 應用程序的 Page_Load 方法中。

    來源:http://msdn.microsoft.com/zh-cn/library/aa287564(VS.71).aspx

    推薦閱讀:

    文章主題: 【論河圖洛書】 杜國民 著
    電影《教父》主題曲《Speak Softly Love(柔聲傾訴)》
    不要只去星巴克啦,最新最夯的是去主題咖啡館!
    誠信教育主題班會記錄&教案
    「中國夢」影像公益廣告主題展作品欣賞(之一)

    TAG:程序 | 整理 | 主題 | MSDN | 示例 |