通過使用 VisualC # .NET 建立 ASP.NETWeb 應用程式
1. 啟動 MicrosoftVisualStudio.NET。
2. 在 檔案 菜單, 指向 建立 , 然後單擊 項目 。
3. 在 建立項目 對話方塊中, 單擊 ProjectTypes@@ , 下 VisualC # 項目 , 然後單擊 模板 下 ASP.NETWebApplication@@@ 。
4. 在 位置 框中, 替換 WebApplication # # 預設名稱與 MyWebApp 。 如果您使用本機伺服器, 您可以保留伺服器名稱 http://localhost 。 結果 位置 框中顯示如下:
http://localhost/MyWebApp
建立樣本 Web Form頁
1. 向 ASP.NETWeb 應用程式添加新 Web Form如下:a. 右擊項目節點在 SolutionExplorer@@, 指向 添加 , 並單擊 添加 Web Form 。
b. 在 名稱 框中, 鍵入 MySample.aspx , 然後單擊 開啟 。
2. 在屬性視窗, 用於文檔 pageLayout 屬性更改為 FlowLayout 。 儘管您不必這樣做要使用範例程式碼, 這將使簡報出現清洗。
3. 如下添加到頁: DataGrid 、 按鈕 和 Label 伺服器控制項a. 將 ASP.NET DataGrid 伺服器控制項從 WebForms 工具箱拖到頁。
b. 在屬性視窗, 將 DataGrid 控制項的 ID 更改為 DemoGrid 。
c. 將 Button ASP.NET 伺服器控制項從 WebForms 工具箱拖到頁下面 DataGrid 。
d. 在屬性視窗, GetSelections , 變為 Button 控制項的 ID 並然後將 Text 屬性更改為 Get 選項 。
e. 將 標籤 ASP.NET 伺服器控制項從 WebForms 工具箱拖到頁下面 Button 控制項。
f. 在屬性視窗, ResultsInfo , 變為 Label 控制項的 ID 並刪除 Text 屬性中的文字。
4. 切換到 HTML 視圖編輯器中。 將代碼添加到預設 DataGrid 模板來構造列。 結果代碼對控制項應顯示如下:
<asp:DataGrid id="DemoGrid" runat="server" DataKeyField="CustomerID">
<Columns>
<asp:TemplateColumn HeaderText="Customer">
<ItemTemplate>
<asp:CheckBox ID="myCheckbox" Runat="server" />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
5. 按右鍵該頁, 然後單擊 查看代碼 。 這在編輯器中開啟程式碼後置類別檔案。 添加下列命名空間引用到程式碼後置類別檔案:
using System.Data.SqlClient;
using System.Text;
6. 用以下代碼替換現有代碼為 Page _ Load 事件處理常式:
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
//Create a SqlConnection object.
//Modify the connection string as necessary for your environment.
SqlConnection cn = new SqlConnection("Server=localhost;database=Northwind;UID=sa;PWD=");
SqlCommand cmd = new SqlCommand("SELECT * FROM Customers",cn);
cn.Open();
SqlDataReader reader = cmd.ExecuteReader();
DemoGrid.DataSource = reader;
DataBind();
reader.Close();
cn.Close();
}
}
7. 切換到設計檢視, 並雙擊 GetSelections 。 這在編輯器中開啟程式碼後置類別檔案。 用以下代碼替換現有代碼 GetSelections_Click 事件處理常式中:
private void GetSelections_Click(object sender, System.EventArgs e)
{
int rowCount = 0;
StringBuilder gridSelections = new StringBuilder();
//Loop through each DataGridItem, and determine which CheckBox controls
//have been selected.
foreach(DataGridItem DemoGridItem in DemoGrid.Items)
{
CheckBox myCheckbox = (CheckBox)DemoGridItem.Cells[0].Controls[1];
if(myCheckbox.Checked == true)
{
rowCount++;
gridSelections.AppendFormat("The checkbox for {0} was selected<br>",
DemoGrid.DataKeys[DemoGridItem.ItemIndex].ToString());
}
}
gridSelections.Append("<hr>");
gridSelections.AppendFormat("Total number selected is: {0}", rowCount.ToString());
ResultsInfo.Text = gridSelections.ToString();
}
驗證它工作
1. 在 檔案 菜單上, 單擊 全部儲存 以儲存 Web Form和其他檔案與項目相關聯。
2. 在 VisualStudio.NET 整合式開發環境 (IDE), 中 產生 菜單上單擊 產生解決方案 。
3. 在 SolutionExplorer@@, 右擊 WebForm 頁 ( MySample.aspx ), 並然後單擊 在瀏覽器查看 。 請注意, 網格中顯示資料頁。 此外, 首列中的每一行出現一個複選框。 使用者可以單擊以選中此複選框來標記特定行。
4. 單擊以選中幾個複選框的行, 然後單擊 擷取選項 。
頁向伺服器進行往返行程並 GetSelections_Click 事件處理常式, 中執行代碼後, 您上一步中選定項的列表顯示。 GetSelections_Click 事件處理迴圈通過 ASP.NET DataGrid 伺服器控制項, 中各個 DataGridItem 中代碼確定相關 CheckBox 控制項的 Checked 屬性為 true , 並然後記錄關聯索引值在該特定位置對於 DataKeys 是 DataGrid 。