-1

我正在尝试设置一个网站以在从 Web 服务接收数据时显示此内容。

例子

显示此表的最佳方式是什么?一开始我有一个gridview,但后来我想在第三列中有很多信息,在第四列中有两个按钮而不是1。

品牌、价格和产品名称的数据来自我对 Web 服务的调用,因此我需要为从该 Web 服务调用中收到的每件商品重复这些行。

编辑 - 我在下面的回答是关于我是如何做到的,我最终只是在后面的代码中创建了 html,而不是按照我想要的方式显示它。

4

3 回答 3

1

事实证明,像我在图像中显示的那样显示的最佳方法是从代码隐藏创建一个 html 表,并用所需的数据填充所需的部分。

我摆了一张桌子

<asp:Table Width="100%" ID="tblQuotes" runat="server">  
<asp:TableHeaderRow ID="Headers" runat="server">  
    <asp:TableHeaderCell>Brand</asp:TableHeaderCell>  
    <asp:TableHeaderCell>Price</asp:TableHeaderCell>  
    <asp:TableHeaderCell>Information</asp:TableHeaderCell>  
    <asp:TableHeaderCell>Purchase</asp:TableHeaderCell>  
 </asp:TableHeaderRow>  
 </asp:Table>   

然后从后面的代码中添加到单元格和行中。

例如

row.Cells.Add(colBrand);                      
Image logo = new Image();
logo.ImageUrl = imageUrl;
colProvider.Controls.Add(logo);
于 2013-03-27T10:47:07.583 回答
1

我认为最简单的方法是使用数据源,或者这不是您的选择吗?

Repeater1.DataSource = values;
Repeater1.DataBind();
于 2013-03-26T11:36:59.097 回答
0

如果您从 api 返回任何通过 IEnumerable 接口确认的内容,则不必这样做。

例如,您可以在数据表或列表中生成 api 结果。他们都用 IEnumerable 接口确认。然后,您可以简单地将这些对象绑定到中继器或网格。

另一种选择是使用 asp.net 文字控制。它会给你一个占位符。至于现在,我可以看到您不需要保留此页面的状态,因此字面量在这里也可以做得很好。但是,要使用文字控件,您可能必须动态生成 html。但是,它可以让您完美控制生成的 html。

于 2013-03-26T11:37:57.937 回答