Я связываю ListView с коллекцией объектов, которая работает нормально.К сожалению, когда коллекция пуста, я не получаю текст в элементе EmptyItemTemplate, отображаемый так, как я ожидал.
Код разметки
<asp:ListView ID="lvBuildingContactsGrid" runat="server"
onitemcommand="lvBuildingContactsGrid_ItemCommand" >
<LayoutTemplate>
<!-- some more html markup -->
<asp:PlaceHolder ID="itemPlaceholder" runat="server" />
<!-- some more html markup -->
</LayoutTemplate>
<ItemTemplate>
<!-- some item makup -->
</ItemTemplate>
<EmptyItemTemplate>
<p> empty text that isn't displaying </p>
</EmptyItemTemplate>
</asp:ListView>
Код привязки -
ContactRoleCollection contactRoles = new ContactRoleCollection();
contactRoles.ContactRoleSearchByBuildingID(int params);
lvListView.DataSource = contactRoles;
lvListView.DataBind();
Когда коллекция возвращает нулевое значение, текст EmptyItemTemplate не отображается.Я просмотрел исходный код страницы, и он вообще не отображается (а не скрыт).Я заменил объект DataSource просто нулевым, т. Е.
lvListView.DataSource = null
Просто чтобы проверить его, и он все еще не работает.Текст не отображается снова.
У меня была эта проблема на других страницах, над которыми я работал (и бросил и сделал обходные пути kludge), так что, очевидно, я просто что-то упускаю - неправильно делаю.
Любой вклад приветствуется