很简单:
data ds1_rep=new data();
string SqlStr1="select top 3 A_title,A_datetime from S_article order by A_id desc";
this.Repeater1.DataSource=ds1_rep.DataSelect(SqlStr1).Tables["select"].DefaultView.ToString();
this.Repeater1.ItemTemplate=Page.LoadTemplate("Control/rep_temp.ascx");//可以只看这里
this.Repeater1.DataBind();
上面的代码相信无误
但在rep_temp.ascx中 我编写的模板:
<table width="100%">
<tr>
<td align="left"><%#DataBinder.Eval((RepeaterItem)Container.DataItem,"A_title")%></td>
<td align="right"><%#DataBinder.Eval((RepeaterItem)Container.DataItem,"A_datetime")%></td>
</tr>
</table><br>
这个就出错了,主要问题是在asp.net1.1版本中,在用户控件中编写模板时,要将之转换成RepeaterItem对象类型,我用<%#DataBinder.Eval((RepeaterItem)Container.DataItem,"A_datetime")%> 但这样不行,有没有人知道怎么用,马上就给分。

解决方案 »

  1.   

    <table width="100%">
    <tr>
    <asp:Repeater ID="Repeater1" runat="server">
    <ItemTemplate>
    <td align="left"><%#DataBinder.Eval((RepeaterItem)Container.DataItem,"A_title")%></td>
    <td align="right"><%#DataBinder.Eval((RepeaterItem)Container.DataItem,"A_datetime")%></td>
    </ItemTemplate>
    </asp:Repeater>
    </tr>
    </table><br>
    这样吗?
      

  2.   

    不是 <asp:Repeater ID="Repeater1" runat="server"> 在首页已经定义了,rep_temp.ascx中只有对它定义的模板,但现在我这样写,不正确。
      

  3.   

    <%#DataBinder.Eval(((RepeaterItem)Container).DataItem, "PID")%>自己看看没测