Now.Year only returns the year. So if you run it right now, it'll return 2010. If you run the same code next year, it'll return 2011.
Ok, let me try to do this with my poor VB skills. :)
Dim last As String
last = ""
Try
Dim i As Integer
Dim j As Integer
Dim time As DateTime = DateTime.Now
i = Now.Year
For j = 11 To 0
If j < (Now.Month - 1) Then
i = (Now.AddYears(1).Year)
Else
i = Now.Year
End If
last = (time.AddMonths(j)).ToString("MMMM") + " " + (i.ToString)
DDL.Items.Add(last)
Next
End Try
If you run this, it will populate the drop down list with the remaining months left in this year, then increase your Year integer, and add the months next year up until this month next year.
At least I think this should work, but I'm not really up on my VB. It should give you an idea though.