0

我在 aps.net 页面上有 2 个 asp.net Listviews,lv1 和 lv2。我很难尝试从 lv2 访问 lv1 的数据项。我需要对列表视图和颜色代码不相等的项目中的项目进行比较。

是否可以从同一页面上的另一个列表视图访问一个列表视图的数据项?

下面是代码:

    <html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>


</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ListView ID="lst1" runat="server">
            <ItemTemplate>
                <table class="tblClass" width="95%" border="0" style="margin: auto; font-size: 13px;
                    height: 150px;">
                    <br />
                    <tr>
                        <td>
                            Account#:
                        </td>
                        <td align="right">
                            <b>
                                <%#Eval("ID")%></b>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Email:
                        </td>
                        <td  align="right">
                            <%#Eval("DefaultEmail")%>
                            <input type="radio" id="rad1" <%#(String.IsNullOrEmpty(Eval("DefaultEmail").ToString()) ? "disabled" : " ")%>
                                name="radEmail" value="<%#Eval("DefaultEmail") %>" />
                        </td>
                    </tr>
                </table>
            </ItemTemplate>
        </asp:ListView>
    </div>
    <div>
        <asp:ListView ID="lst2" runat="server">
            <ItemTemplate>
                <table class="tblClass" width="95%" border="0" style="margin: auto; font-size: 13px;
                    height: 150px;">
                    <br />
                    <tr>
                        <td>
                            Account#:
                        </td>
                        <td align="right">
                            <b>
                                <%#Eval("ID")%></b>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Email:
                        </td>
                        <td  align="right">
                            <%#Eval("DefaultEmail")%>
                            <input type="radio" id="rad2" <%#(String.IsNullOrEmpty(Eval("DefaultEmail").ToString()) ? "disabled" : " ")%>
                                name="radEmail" value="<%#Eval("DefaultEmail") %>" />
                        </td>
                    </tr>
                </table>
            </ItemTemplate>
        </asp:ListView>
    </div>
    </form>
</body>
</html>

我想在 lst1 中使用 EVAL 访问 lst2 的电子邮件项目......这样如果两个值不同,我可以对 tr 元素进行颜色编码。

4

1 回答 1

1

在将它们绑定到列表视图之前,如何在你的集合中解决这个问题?

像这样的东西:

  • 在您的类(绑定到 listview1)上添加其他属性,例如:bool EmailExists
  • 遍历集合,绑定到 listview1,并在第二个集合中搜索电子邮件(绑定到 listView2)。如果找到匹配项,请将 EmailExists 属性设置为 True。
  • 用于<%#Eval(EmailExists) %>根据 EmailExists 的值适当地为 tr 元素着色
于 2013-11-15T08:38:02.170 回答