页面部分代码
<asp:datalist id="dlstComment" style="FONT-SIZE: 9pt" runat="server" width="100%" gridlines="Vertical" bgcolor="#999999" borderstyle="None" cellpadding="3" datakeyfield="NewsId" EnableViewState=False >
<ItemTemplate> <tr>
<td colspan="7">
<uc1:NewsComment id="NewsComment1" runat="server" ArticleId=<%# Convert.ToInt32(DataBinder.Eval(Container,"DataItem.NewsId"))%>>
</uc1:NewsComment>
</td>
</tr>
</ItemTemplate>
</asp:datalist>
NewsComment 用户控件代码如下:<asp:datalist id="dlstNewsComment" style="FONT-SIZE: 9pt" runat="server" width="100%" gridlines="Vertical"
bgcolor="#999999" borderstyle="None" cellpadding="3" datakeyfield="commentId" EnableViewState=False>
<HeaderTemplate>
<tr bgcolor="#CCCCFF">
<td colspan="6">&nbsp;&nbsp;<b><%=ArticleTitle%></b>的评论</td>
<td align="center" width="100">
<asp:LinkButton Runat="server" ID="delNewsComment" CommandArgument="delAll">删除该所有评论 </asp:LinkButton>
</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr bgcolor="#FFFFFF">
<td align="center" ArticleID= '<%# DataBinder.Eval(Container,"DataItem.commentId")%>'>
<asp:checkbox id="SelCheckBox" runat="server" onclick="SelCheckForParent();"></asp:checkbox>
</td>
<td align="center">
第<%# Convert.ToInt32(DataBinder.Eval(Container, "ItemIndex")) + 1 %>条评论
</td>
<td align="center">
<%# Convert.ToDateTime(DataBinder.Eval(Container.DataItem, "AddTime")).ToString("yyyy-MM-dd HH:mm") %>
</td>
<td align="left" title='<%# DataBinder.Eval(Container,"DataItem.UserName")%>'>
<%# DataBinder.Eval(Container,"DataItem.UserName")%>
</td>
<td align="left">
<%# DataBinder.Eval(Container,"DataItem.IP")%>
</td>
</tr>
<tr>
<td colspan="4">
<div style="padding:10px;" id="dvContent">
<%# DataBinder.Eval(Container,"DataItem.Content")%>
</div>
<div></div>
</td>
<td align="center">
<asp:LinkButton Runat="server" ID="lbtnDelete" CommandArgument="delete" CommandName=<%# DataBinder.Eval(Container,"DataItem.commentId")%>>删除</asp:LinkButton>
</td>
</tr>
</ItemTemplate>当页面第一次打开时显示正确的,但翻到第二页时,用户控件NewsComment1的ArticleId就
都为0了,不知为什么?我在翻页时还加了如下代码呢
foreach(DataListItem Item in dlstComment.Items)
{
NewsComment NewsComment1 = (NewsComment)Item.FindControl("NewsComment1");
NewsComment1.ArticleId = Convert.ToInt32(this.dlstComment.DataKeys[Item.ItemIndex]);
}
请教一下各位大老,万分感激!!!