Repeater嵌套使用
2011-09-04 21:18
281 查看
未完。。
前台代码:
后台代码:
前台代码:
<asp:Repeater ID="Repeater_Info" runat="server" OnItemDataBound="Repeater_Info_ItemDataBound"> //OnItemDataBound是绑定后台,使后台的代码和repeater绑定 <ItemTemplate> <tr> <td width="20" nowrap="nowrap">//nowrap:表单内容不换行 <strong>内容1</strong> </td> <td align="left" nowrap="nowrap"> <strong>内容2</strong> </td> </tr> <tr> <td colspan="2"> <asp:Repeater ID="Content_List" runat="server"> <ItemTemplate> <td nowrap="nowrap" runat="server" id="typeTd">//runat="server",服务器控件的使用,可以在后台调用id </td> <td> <label for="<%#Eval("ContentID") %>">//绑定后台数据 <%#Eval("Content") %> </label>//点击label上显示的后台的Content的内容,可以选中ContentID绑定的内容 </td> </ItemTemplate> </asp:Repeater> </td> </tr> </ItemTemplate> </asp:Repeater>
后台代码:
protected void Repeater_Info_ItemDataBound(object sender, RepeaterItemEventArgs e) { //判断里层repeater处于外层repeater的哪个位置( AlternatingItemTemplate,FooterTemplate,HeaderTemplate,ItemTemplate,SeparatorTemplate) if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { Repeater rep = e.Item.FindControl("Content_List") as Repeater;//找到里层的repeater对象 rep.ItemDataBound += new RepeaterItemEventHandler(rep_ItemDataBound); DataRowView rowv = (DataRowView)e.Item.DataItem;//找到分类Repeater关联的数据项 int typeid = Convert.ToInt32(rowv["QuestionID"]); //获取填充子类的id //数据库的连接,数据的绑定 DataTable dt = dsInfo.Tables[0]; AQ.TypeID = (int)dt.Rows[0]["TypeID"]; rep.DataSource = dsInfo.Tables[0];//数据绑定 rep.DataBind(); } } void rep_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { //找到里层的td对象 HtmlTableCell td = e.Item.FindControl("typeTd") as HtmlTableCell; DataRowView rowv = (DataRowView) e.Item.DataItem ; if ((int)rowv["TypeID"] == 1) { td.InnerHtml = "<input type=\"radio\" id=\"" + rowv["ContentID"].ToString() + "\" name=\"" + rowv["QuestionID"].ToString() + "\" value=\"" + rowv["ContentID"].ToString() + "\"/>"; } else if ((int)rowv["TypeID"] == 2) { td.InnerHtml = "<input type=\"checkbox\" id=\"" + rowv["ContentID"].ToString() + "\" name=\"" + rowv["QuestionID"].ToString() + "\" value=\"" + rowv["ContentID"].ToString() + "\"/>"; } else { td.InnerHtml = "<input type=\"text\" id=\"" + rowv["ContentID"].ToString() + "\" name=\"" + rowv["QuestionID"].ToString() + "\" value=\"" + rowv["ContentID"].ToString() + "\"/>"; } } }
相关文章推荐
- 使用嵌套的Repeater控件显示分级数据
- 在Repeater中嵌套使用Repeater
- 使用嵌套 Repeater 控件和 Visual C# .Net 显示分层数据
- 使用嵌套的Repeater控件显示分级数据
- DataGrid中嵌套使用Repeater
- asp.net控件用法--在Repeater中嵌套使用Repeater
- DataRelation 实现父子表 父子级 Repeater的嵌套使用
- Repeater控件嵌套使用
- Repeater控件嵌套使用
- asp.net控件用法--在Repeater中嵌套使用Repeater 【转】
- 在Repeater中嵌套使用Repeater
- 在Repeater中嵌套使用Repeater
- 使用嵌套 Repeater 控件和 Visual C# .Net 显示分层数据
- asp.net中Repeater嵌套绑定的方法(使用两个Repeater做子类别绑定)
- 使用嵌套的Repeater控件显示分级数据
- asp:Repeater 嵌套使用
- DataGrid中嵌套使用Repeater
- 在Repeater中嵌套使用Repeater
- Repeater控件嵌套使用
- 在Repeater中嵌套使用Repeater