1

我有一个在 UpdatePanel 内的 ListView,UpdateMode = Conditional。这是一个非常大的列表视图,有很多模板,所以我不显示细节。

<asp:UpdatePanel ID="updListView" runat="server" UpdateMode="Conditional">
   <ContentTemplate>
       <asp:ListView ID="lstvScanPreview" runat="server" OnItemDataBound="lstvScanPreview_ItemDataBound">
       ...
   </ContentTemplate>
</asp:UpdatePanel>

我在更新面板之外还有一个单选按钮列表,其 OnSelectedIndexChanged 为

protected void rgbShowIssues_SelectedIndexChanged(object sender, EventArgs e)
{
   if (rgbShowIssues.SelectedIndex == 0)
       lstvScanPreview.DataSource = previewData.Data.Where(S => S.IssueType != ScanIssues.None);
   else
       lstvScanPreview.DataSource = previewData.Data;

   updListView.Update();
}

此方法内设置的断点确实会被命中,但列表视图不会刷新。其他控件也有调用 updListView.Update() 的代码隐藏事件,这些确实有效。如果我在单击 rgbShowIssues 单选按钮列表后触发了这些其他事件之一,那么当更新确实发生时,我可以看到如果 UpdatePanel 在预期时刷新,我会看到预期的更改。

任何想法为什么这不起作用?谢谢。

4

0 回答 0