首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在列表视图中显示类似于数据的矩阵

在列表视图中显示类似于数据的矩阵
EN

Stack Overflow用户
提问于 2013-07-09 17:25:12
回答 1查看 559关注 0票数 0

我在一个广告网站上工作,在其中一个页面上展示它的商品。我想在列表视图中显示商品,但我想让我的列表视图在矩阵视图中显示其商品。例如,我的listview读取商品的名称、描述和图像等数据,并在第一行显示前四个数据,在第二行显示下四个数据,依此类推。你能帮帮我吗?我该怎么做?我想使用div ins Listview的Itemtemplate,这是适合我的原因的代码吗?

代码语言:javascript
复制
<asp:DataList ID="datalist_Data" runat="server">
<HeaderTemplate>
    <table>
        <tr style="background-color: #6699FF; color: #FFFFFF; font-size: large;">
            <td width="150">Column 1</td>
            <td width="150">Column 2</td>
            <td width="150">Column 3</td>
            <td width="150">Column 4</td>
        </tr>
    </table>
</HeaderTemplate>
<ItemTemplate>
    <table>
        <tr>
            <td width="150"><%# Eval("c1") %></td>
            <td width="150"><%# Eval("c2") %></td>
            <td width="150"><%# Eval("c3") %></td>
            <td width="150"><%# Eval("c4") %></td>
        </tr>
    </table>
</ItemTemplate>

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-10 16:58:50

DataList有一组属性来处理您的问题:RepeatColumnsRepeatDirectionRepeatLayout

阅读有关MSDN上的DataList控件的更多信息

以下是您所需的代码(其中Foo是您的商品类型):

代码语言:javascript
复制
<asp:DataList runat="server" ID="datalist" RepeatColumns="4" RepeatDirection="Horizontal" RepeatLayout="Table">
    <HeaderTemplate>
        <table>
            <tr style="background-color: #6699FF; color: #FFFFFF; font-size: large;">
                <td width="150">Column 1</td>
                <td width="150">Column 2</td>
                <td width="150">Column 3</td>
                <td width="150">Column 4</td>
            </tr>
        </table>
    </HeaderTemplate>
    <ItemStyle Width="150" Wrap="true" />
    <ItemTemplate>

        <%# (Container.DataItem as Foo).Name %><br />
        <%# (Container.DataItem as Foo).Description %><br />
        <%# (Container.DataItem as Foo).ImageUrl %>

    </ItemTemplate>
</asp:DataList>

请注意,此编写避免了Eval,因为它需要反射,因此效率很低。

编辑:这里是C#代码:

代码语言:javascript
复制
protected void Page_Load(object sender, EventArgs e)
{
    List<Foo> list = GetGoods();

    datalist.DataSource = list;
    datalist.DataBind();
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17544633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档