ListView 裡面的TD 在塞一個 LsitView 問題

baidu_23677379 2015-04-21 04:33:01
之前都是设计点了 ListView 每一Row 后面自己的 按钮,将画面显示在下面另一个 ListView

刚刚心血来槽想说,ListView 里面应该可以在挤个 ListView吧

写完发现有问题...可是看不懂他的错误提示,请问我是哪里搞错了?





<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ListView ID="lvA" runat="server" OnItemDataBound="lvA_ItemDataBound">
<LayoutTemplate>
<table>
<tr>
<th>ID</th>
<th>內藏的ListView</th>
<th></th>
</tr>
<tr id="itemPlaceholder" runat="server" />
</table>
</LayoutTemplate>
<ItemTemplate>
<td>
<asp:Label ID="lblmyID" runat="server" Text='<%# Eval("myID") %>'></asp:Label>
</td>

<td>
<asp:ListView ID="lvB" runat="server">
<LayoutTemplate>
<table style="width: 100%" border="0">
<tr>
<th style="width: 30%">姓名</th>
</tr>
<tr id="itemPlaceholder2" runat="server" />
</table>
</LayoutTemplate>
<ItemTemplate>
<td>
<asp:Label ID="lbl_B_myName" runat="server" Text='<%# Eval("myName") %>'></asp:Label>
</td>
</ItemTemplate>
</asp:ListView>
</td>

</tr>
</ItemTemplate>
</asp:ListView>

</div>
</form>
</body>
</html>





// 建立 Class
[Serializable]
public class MyInfo
{
public String myID { set; get; }
public String myName { set; get; }

public MyInfo()
{
myID = String.Empty;
myName = String.Empty;
}

}

protected void Page_Load(object sender, EventArgs e)
{
List<MyInfo> tL = new List<MyInfo>();
MyInfo tmpClass = new MyInfo();

tmpClass.myID = "CSDN";
tL.Add(tmpClass);
lvA.DataSource = tL;
lvA.DataBind();
}

protected void lvA_ItemDataBound(object sender, System.Web.UI.WebControls.ListViewItemEventArgs e)
{
ListView Lv = e.Item.FindControl("lvB") as ListView;

List<MyInfo> tL = new List<MyInfo>();
MyInfo tmpClass = new MyInfo();
tmpClass.myName = "溪";
tL.Add(tmpClass);

tmpClass.myName = "A使";
tL.Add(tmpClass);

tmpClass.myName = "第";
tL.Add(tmpClass);

tmpClass.myName = "恩";
tL.Add(tmpClass);

Lv.DataSource = tL;
Lv.DataBind();

}
...全文
84 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
baidu_23677379 2015-04-21
  • 打赏
  • 举报
回复
引用 1 楼 apollokk 的回复:
意思就是要你把lvB里面的占位符的ID也设置为itemPlaceholder而不是itemPlaceholder2
原来那两个要一样喔!! 测试出来了 ^^ 谢谢你 话说有一个地方我一直觉得很怪

                        <tr id="itemPlaceholder" runat="server" />    // 为什么 </td> 结尾 会是在  <ItemTemplate> 之后 @@

                    </table>
                </LayoutTemplate>
                <ItemTemplate>
Hello World, 2015-04-21
  • 打赏
  • 举报
回复
意思就是要你把lvB里面的占位符的ID也设置为itemPlaceholder而不是itemPlaceholder2

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧