Solved

List views in VB.NET

Posted on 2009-05-19
4
164 Views
Last Modified: 2013-11-26
Afternoon,

I'm trying to change the row colour in a list view when the items become older than 30 days.  Well that may change i can play wiht that later but initially i though it would be simple, but the colour doesn't change.  Can anyone see what's wrong with my code?
LVReturns.Items.Clear()

        For Each ReturnItem In DS.Returns.Rows

            Dim LI As New ListViewItem

            Dim TimeSpan As TimeSpan

            Dim Age As Integer = 0

            TimeSpan = Now.Subtract(ReturnItem.SendDate)

            Age = TimeSpan.Days

            If Age > 30 Then

                LI.ForeColor = Color.Red

                LI.UseItemStyleForSubItems = True

            End If

            LI.Text = Convert.ToString(ReturnItem.ref)

            LI.SubItems.Add(ReturnItem.Name)

            LI.SubItems.Add(ReturnItem.SendDate)

            LI.SubItems.Add(Age)

            LI.SubItems.Add(ReturnItem.Item)

            LVReturns.Items.Add(LI)

        Next

Open in new window

0
Comment
Question by:nick210577
  • 3
4 Comments
 
LVL 39

Accepted Solution

by:
abel earned 500 total points
ID: 24421832
Is this a ListView in ASP.NET or in WinForms? Seems to be the latter, as the UseItemStyleForSubItems  is not available on an ASP.NET listitem.

Are you sure your if-statement is ever hit? You can test by just changing only the very first list item and see if that works.


0
 
LVL 39

Assisted Solution

by:abel
abel earned 500 total points
ID: 24421858
In other words, suppose you do this, is then everything green?

LVReturns.Items.Clear()

        For Each ReturnItem In DS.Returns.Rows

            Dim LI As New ListViewItem

            Dim TimeSpan As TimeSpan

            Dim Age As Integer = 0

            TimeSpan = Now.Subtract(ReturnItem.SendDate)

            Age = TimeSpan.Days

            If Age > 30 Then

                LI.ForeColor = Color.Red

                LI.UseItemStyleForSubItems = True

            Else

                LI.ForeColor = Color.Green

                LI.UseItemStyleForSubItems = True

            End If

            LI.Text = Convert.ToString(ReturnItem.ref)

            LI.SubItems.Add(ReturnItem.Name)

            LI.SubItems.Add(ReturnItem.SendDate)

            LI.SubItems.Add(Age)

            LI.SubItems.Add(ReturnItem.Item)

            LVReturns.Items.Add(LI)

        Next

Open in new window

0
 

Author Closing Comment

by:nick210577
ID: 31582986
Thanks guys...

Embarrassingly i have a couple of LV's on this page and i'd added the code to the wrong one, and none of the lines met that criteria.  Adding the else/ forecolor green highlighted my mistake.  Thanks guys.
0
 
LVL 39

Expert Comment

by:abel
ID: 24422314
(from grading comment)
> Thanks guys...
You're welcome, I (abel) was only one person ;-)

> Embarrassingly i have a couple of LV's on this page and i'd added the code to the wrong > one, and none of the lines met that criteria. Adding the else/ forecolor green highlighted my mistake.

don't let your own mistakes (we all make them, don't feel embarrassed, that's what this site is for, have an extra pair of eyes) cloud your judgment in grading. Please review the 10pts must principle of EE for why this is.
0

Featured Post

DevOps Toolchain Recommendations

Read this Gartner Research Note and discover how your IT organization can automate and optimize DevOps processes using a toolchain architecture.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Summary Displaying images in RichTextBox is a common requirement with limited solutions available. Pasting through clipboard or embedding into RTF content only support static images.  This article describes how to insert Windows control objects int…
Many of us here at EE write code. Many of us write exceptional code; just as many of us write exception-prone code. As we all should know, exceptions are a mechanism for handling errors which are typically out of our control. From database errors, t…
Need to grow your business through quality cloud solutions? With everything required to build a cloud platform and solution, you may feel like the distance between you and the cloud is quite long. Help is here. Spend some time learning about the Con…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

919 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

19 Experts available now in Live!

Get 1:1 Help Now