本文实例讲述了ASP.NET中访问DataGrid中所有控件值的方法。分享给大家供大家参考,具体如下:
<%@ Page Language=\"C#\" %> <%@ import Namespace=\"System.Collections\" %> <script runat=\"server\"> void Page_Load(Object sender, EventArgs e) { if(!Page.IsPostBack){ ArrayList data = new ArrayList(); data.Add(new Person(\"Tom\",33,true)); data.Add(new Person(\"Jhon\",39,false)); data.Add(new Person(\"Mark\",20,false)); data.Add(new Person(\"Linda\",27,true)); MyDataGrid.DataSource = data; MyDataGrid.DataBind(); } } void GetValues_Click(Object sender, EventArgs e) { String Result = \"\"; foreach(DataGridItem dataGridItem in MyDataGrid.Items){ //Get name from cell[0] String Name = dataGridItem.Cells[0].Text; //Get text from textbox in cell[1] String Age = ((TextBox)dataGridItem.FindControl(\"AgeField\")).Text; //Get Checked property of Checkbox control bool IsGraduate = ((CheckBox)dataGridItem.FindControl(\"IsGraduateField\")).Checked; // get Values from Checkboxlist String Skills = \"\"; foreach(ListItem item in ((CheckBoxList)dataGridItem.FindControl(\"CheckBoxList1\")).Items){ if (item.Selected){ Skills += item.Value + \",\"; } } Skills = Skills.TrimEnd(\',\'); //Get RadioButtonList Selected text String Experience = ((RadioButtonList)dataGridItem.FindControl(\"RadioButtonList1\")).SelectedItem.Text; //Get DropDownList Selected text String Degree = ((DropDownList)dataGridItem.FindControl(\"DropDownList1\")).SelectedItem.Text; // Build String to show result. Result += Name; Result += \" [Age -\" + Age + \"] \"; if (IsGraduate){ Result += \"Is Graduate , \"; }else{ Result += \"Is not Graduate , \"; } Result += \"Has Skills[\" + Skills + \"] , \"; Result += \"Has \" + Experience + \" Experience , And \" ; Result += \"Has \" + Degree + \" Degree.\" ; Result += \"<br>\"; } ResultField.Text = Result; } class Person{ String _Name; int _Age; bool _IsGraduate; public Person(String name,int age, bool isGraduate){ _Name = name; _Age = age; _IsGraduate = isGraduate; } public String Name{ get{return _Name;} } public int Age{ get{return _Age;} } public bool IsGraduate{ get{return _IsGraduate;} } } </script> <html> <head> </head> <body> <form runat=\"server\"> <asp:DataGrid id=\"MyDataGrid\" runat=\"server\" AutoGenerateColumns=\"False\"> <ItemStyle verticalalign=\"Top\"></ItemStyle> <Columns> <asp:BoundColumn DataField=\"Name\" HeaderText=\"Name\"></asp:BoundColumn> <asp:TemplateColumn HeaderText=\"Age\"> <ItemTemplate> <asp:TextBox id=\"AgeField\" Columns=\"5\" Text=\'<%# DataBinder.Eval(Container.DataItem,\"Age\") %>\' runat=\"server\"></asp:TextBox> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText=\"Graduate\"> <ItemTemplate> <asp:CheckBox id=\"IsGraduateField\" Checked=\'<%# (bool)DataBinder.Eval(Container.DataItem,\"IsGraduate\") %>\' runat=\"server\"></asp:CheckBox> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText=\"Skills\"> <ItemTemplate> <asp:CheckBoxList id=\"CheckBoxList1\" runat=\"server\" > <asp:ListItem Value=\"C#\" Selected=\"true\">C#</asp:ListItem> <asp:ListItem Value=\"C++\">C++</asp:ListItem> <asp:ListItem Value=\"VB\">VB</asp:ListItem> <asp:ListItem Value=\"SQL Server\" Selected=\"true\">SQL Server</asp:ListItem> </asp:CheckBoxList> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText=\"Experience\"> <ItemTemplate> <asp:RadioButtonList id=\"RadioButtonList1\" runat=\"server\" > <asp:ListItem Value=\"1\" Selected=\"true\">Less then 1 Year</asp:ListItem> <asp:ListItem Value=\"3\">Less then 3 Year</asp:ListItem> <asp:ListItem Value=\"5\">Less then 5 Year</asp:ListItem> <asp:ListItem Value=\"10\">Less then 10 Year</asp:ListItem> </asp:RadioButtonList> </ItemTemplate> </asp:TemplateColumn> <asp:TemplateColumn HeaderText=\"Degree\"> <ItemTemplate> <asp:DropDownList id=\"DropDownList1\" runat=\"server\" > <asp:ListItem Value=\"HighSchool\" >HighSchool</asp:ListItem> <asp:ListItem Value=\"Graduate\" Selected=\"true\">Graduate</asp:ListItem> <asp:ListItem Value=\"Masters\">Masters</asp:ListItem> <asp:ListItem Value=\"PHD\">PHD</asp:ListItem> </asp:DropDownList> </ItemTemplate> </asp:TemplateColumn> </Columns> </asp:DataGrid> <br /> <asp:Button id=\"GetValues\" onclick=\"GetValues_Click\" runat=\"server\" Text=\"GetValues\"></asp:Button> <br /> <asp:Label id=\"ResultField\" runat=\"server\"></asp:Label> </form> </body> </HTML>
更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net文件操作技巧汇总》、《asp.net ajax技巧总结专题》及《asp.net缓存操作技巧总结》。
希望本文所述对大家asp.net程序设计有所帮助。
本文地址:https://www.stayed.cn/item/3042
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我