Visual?C#?Web?應用程序示例主題(一)(MSDN整理)
本示例在運行時將文本框和按鈕添加到 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 屬性還可以訪問瀏覽器的其他許多屬性,如 Url、ServerVariables 和 User。
示例: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#)
本示例使用列表控制項的 SelectedIndex 和 SelectedItem 屬性訪問有關所選項的信息。
示例:
// 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();}
編譯代碼
本示例需要:
DataGrid1
的 DataGrid 控制項。 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"]);
編譯代
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(柔聲傾訴)》
※不要只去星巴克啦,最新最夯的是去主題咖啡館!
※誠信教育主題班會記錄&教案
※「中國夢」影像公益廣告主題展作品欣賞(之一)