Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / ASP.NET / Web Controls / November 2007

Tip: Looking for answers? Try searching our database.

DataList - How to programmatically add a separator row

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Tony_VBACoder - 20 Nov 2007 02:27 GMT
With ASP.NET 2.0 VB.NET, how do I:

I have a multi-column (4 columns) DataList control on my WebForm that
displays sports teams for our league.  The data is grouped by Division Names
where there are 4 teams per Division.  When the data is displayed on the Web
Page, it will be a 4x4 (4 columns by 4 rows) grid.  What I need to be able to
do is, add a separator row whenever the Division Name changes and display
that Division name such that it spans across 4 columns.

I have a stored procedure that sorts the data by Division name, so the data
is already coming in sorted by Division.  All I need to be able to do is
detect when the Division name changes, and then add a new row to the DataList.

I have done something similar using a GridView control and the "Protected
Overrides Sub Render(ByVal writer As HtmlTextWriter)" event, but I can't seem
to find any examples of how to do this with a DataList control.
PJ on Development - 22 Nov 2007 18:33 GMT
Hi, Tony

What I use to do in such cases is more a hack than proper code, but
I'd add on the ItemDataBound event check whenever the name of the
league changes and add a Literal control to the DataListItem that
would create the proper HTML to render the line.

Although some try and err might be required to achieve the desired
result.

Regards,

Paulo Santos
http://pjondevelopment.50webs.com

> With ASP.NET 2.0 VB.NET, how do I:
>
[quoted text clipped - 12 lines]
> Overrides Sub Render(ByVal writer As HtmlTextWriter)" event, but I can't seem
> to find any examples of how to do this with a DataList control.
Tony_VBACoder - 24 Nov 2007 02:46 GMT
Could you provide me with some code on how to add a Literal Control that will
span across the columns?  I have the following code in my DataList
(dlstOwners) control's ItemDataBound event that does the compare, and it
works, but I don't understand how to go about adding the Literal Control:

   Private Sub dlstOwners_ItemDataBound(ByVal sender As Object, ByVal e As
System.Web.UI.WebControls.DataListItemEventArgs) Handles
dlstOwners.ItemDataBound
       If (e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType =
ListItemType.AlternatingItem) Then
           Dim sDiv As String = Convert.ToString((CType(e.Item.DataItem,
DataRowView)).Row.ItemArray(4).ToString())
           ' Compare it to the previous one
           If sDiv <> msPrevDiv Then
               ' Add a new separator row spanning across the 4 columns that
will display the Division
               ' Store it in the holding variable
               msPrevDiv = sDiv
           End If
       End If
   End Sub

> Hi, Tony
>
[quoted text clipped - 27 lines]
> > Overrides Sub Render(ByVal writer As HtmlTextWriter)" event, but I can't seem
> > to find any examples of how to do this with a DataList control.

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.