asp.net 如何将项目列表传递给评估函数

本文关键字:评估 函数 列表 项目 net asp | 更新日期: 2023-09-27 18:37:15

这是我的代码,用于在列表视图中将产品作为列表视图查看每个项目内的列表视图 我想查看项目列表 我该怎么做? 我无法理解 eval 函数的概念,我想知道我是否可以从没有数据绑定的代码隐藏代码中传递列表项,或者它基本上取决于数据绑定?

  <asp:ListView ID="mylistView" runat="server" GroupItemCount="3">
            <EmptyDataTemplate>
                <table id="Table2" runat="server">
                    <tr>
                        <td>
                            No data was returned.
                        </td>
                    </tr>
                </table>
            </EmptyDataTemplate>
            <EmptyItemTemplate>
                <td id="Td3" runat="server" />
            </EmptyItemTemplate>
            <GroupTemplate>
                <tr id="itemPlaceholderContainer" runat="server">
                    <td id="itemPlaceholder" runat="server">
                    </td>
                </tr>
            </GroupTemplate>
            <ItemTemplate>
                <table border="0" width="300" style="display: inline-block; background-color: Lime;">
                    <tr>
                        <td>
                            &nbsp
                        </td>
                        <td>
                            <a href='ContactUs.aspx'>
                                <image src='productsImg/<%# Eval("Pic_Path") %>' width="100" height="75" border="0">
                            </a>&nbsp
                        </td>
                        <td>
                            <a><b style="text-decoration: underline;">
                                <%# Eval("MenuName") %></b> </a>
                            <br />
                          want to view here list of items 
                       I 
                        </td>
                    </tr>
                </table>
            </ItemTemplate>
            <LayoutTemplate>
                <table id="Table1" runat="server">
                    <tr id="Tr1" runat="server">
                        <td id="Td1" runat="server">
                            <table id="groupPlaceholderContainer" runat="server">
                                <tr id="groupPlaceholder" runat="server">
                                </tr>
                            </table>
                        </td>
                    </tr>
                    <tr id="Tr2" runat="server">
                        <td id="Td2" runat="server">
                        </td>
                    </tr>
                </table>
            </LayoutTemplate>
        </asp:ListView>

这是代码隐藏...

         dataSource.ConnectionString = connetionString;
    dataSource.SelectCommand = "SELECT * FROM tbl_WebMenu where MenuID like'3_';";
    mylistView.DataSource = dataSource;
    mylistView.DataBind();

提前谢谢。

asp.net 如何将项目列表传递给评估函数

Eval 用于绑定到假定为只读的 UI 控件。 它可用于设置任何类型的控件属性。完整的语法是"Databinder.Eval",它必须与databind结合使用。看看这个例子。

<asp:TemplateField>
<ItemTemplate>
        <asp:Label ID="lblRead" runat="server" Text='<%# Eval("FieldName") %>'>
        </asp:Label>
</ItemTemplate>
</asp:TemplateField>

您甚至可以使用 EVAL 设置控件的属性。 它提供了灵活性。

但是 eval 有一个缺点,因为它使用反射来评估表达式。在此处阅读更多内容 http://msdn.microsoft.com/en-us/library/4hx47hfe.aspx#remarksToggle