Link to home
Start Free TrialLog in
Avatar of M.L. Martin
M.L. MartinFlag for United States of America

asked on

I want to elminate the space that is displayed between Multiple DetailViews if one is empty or NULL of values.

ASP.Net DetailsView question:
I have built an ASP.net page with Webforms and VB. I am passing a search parameter using a url value. On the results page I have multiple DetailView's. They are place one behind the other. Everything works fine but I want to eliminate the empty space when a data source connected to a DetailView is empty. Here is my example. The Header text says Behavior and Analysis:

Behavior and Analysis:
DetailView 1 - data source is not empty so display
DetailView 2 - data source is not empty so display
DetailView 3 - data source is empty
(Empty Spacing) After DetailView 3 there is empty space here (Empty Spacing)
DetailView 4 - data source is empty
(Empty Spacing) After DetailView 4 there is empty space here (Empty Spacing)
DetailView 5 - data source is not empty, display.

In my ASPx page there is space between the records displaying for DetailView 2 and DetailView 5 because even though no records are returned the DetailView Control still takes up space. How can I eliminate the empty space if the data source for DetailView 3 & 4 are empty? Basically, I want to eliminate the space between DetailViews id the data source is empty.
ASKER CERTIFIED SOLUTION
Avatar of Chinmay Patel
Chinmay Patel
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of M.L. Martin

ASKER

Thank you Chinmay. I was thinking along those lines but I was sure about the syntax. Below is what I have so far. I am sure it is not correct. If you can help me with the Syntax I will give that a try.

Protected Sub DetailsView1 Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles DetailesView1.Page_Load

       If DetailsView1.Items.Count = 0 Then
       DetailsView1.Visible = False
       End If

   
    End Sub
you are right. It will not work that way. As this is DetailsView, you should use

DetailsView.DataItemCount https://docs.microsoft.com/en-us/dotnet/api/system.web.ui.webcontrols.detailsview.dataitemcount?view=netframework-4.7.2

i.e.      
If DetailsView1.DataItemCount = 0 Then
       DetailsView1.Visible = False
       End If

Open in new window