2016-03-13 28 views
0

我正在使用asp.net webforms c#项目,并且我有一个中继器控件,如下所示。如何将Repeater控件绑定到单独的列表<String>值

<asp:Repeater runat="server" id="rptNames" onItemDataBound="rptName_ItemDataBound" > 
     <HeaderTemplate> 
      <table border="1" style="border-color:Red;"> 
       <tr> 
        <td>First Title</td> 
        <td>Second Title</td> 
       </tr> 
     </HeaderTemplate> 
     <ItemTemplate> 
      <tr> 

      </tr>  
     </ItemTemplate>  
     <FooterTemplate> 
      </table> 
     </FooterTemplate> 
</asp:Repeater> 

我要绑定这个中继器控制到如下文返回List<string>的方法。

标题1 标题2 TITLE3 TITLE4

而且我有如下返回不同List<string>另一种方法。它应该绑定到中继器控件的第二列。

标题1 标题2

最后的结果看起来应该像下面。

enter image description here

+0

很确定中继器只能从单个数据集中返回项目。我不认为你可以按照你想要的方式做到这一点。 –

+0

我可以将两种方法的结果合并到一个数据集中吗?如果是的话我怎么能做到这一点? – OseeAliz

+0

您在任何查询中都会这样做。加入两个关键字段。 –

回答

0

你需要改变你的代码设计。 创建一个类并创建该类的列表集合。

这里是一个例子。

public class TitleClass 
{ 
    public string Title1 {get;set;} 
    public string Title2 {get;set;} 
} 

public void BindListToRepeater() 
{ 
List<TitleClass> titleList = new[]{ new TitleClass{ Title1 = "title1", Title2="title2" }}; 
     rptNames.DataSource = titleList; 
     rptNames.DataBind(); 
} 

现在创建您的上述类的列表并将您的列表绑定到Repeater控件。

+0

如果标题和值是相关的,请创建数据表或数组列表并填充数据并绑定它。 –

+0

使用强类型集合总是一个很好的习惯。 – maxspan

相关问题