By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,649 Members | 1,765 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,649 IT Pros & Developers. It's quick & easy.

Populating a List box with recent dates

P: n/a
I am having a interesting issue. I work for a University's Career
Services department. We collect data from recent grads. I am
recreating the online survey we use. I am trying to populate the
graduation date with 4 dates. May **, June **, August **, December **.
The "**" represents the year of graduation. To prevent having to
constantly update this survey I'd like to dynamically create this
values. So at page load I want it to check the server time and only
show the months from the past year. IE since Today is June 07 the
values would read June 07, May 07, December 06, August 06. Then in
August It would read August 07, June 07, May 07, December 06. Etc... I
am trying to think of a clever way to do this and just can not do
this. Anyone have an idea???

Jun 1 '07 #1
Share this Question
Share on Google+
13 Replies


P: n/a
"djjohnst" <dj******@gmail.comwrote in message
news:11**********************@p77g2000hsh.googlegr oups.com...
Anyone have an idea???
List<DateTimelstDates = new List<DateTime>();
DateTime dtmStart = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
while (lstDates.Count < 4)
{
if (dtmStart.Month == 5
|| dtmStart.Month == 6
|| dtmStart.Month == 8
|| dtmStart.Month == 12)
{
lstDates.Add(dtmStart);
}
dtmStart = dtmStart.AddMonths(-1);
}
--
http://www.markrae.net

Jun 1 '07 #2

P: n/a
How about something like...

DateTime dt = DateTime.Today();

for (int iLoop = 0; iLoop < 4; iLoop++)
{
ddlMyDropDown.Items.Add(new ListItem(String.Format("{0:MMM yy}",
dt)));
dt = dt.DateAdd("MM", -3, dt);
}

Dunc
http://www.fluidfoundation.com

On 1 Jun, 14:08, djjohnst <djjoh...@gmail.comwrote:
I am having a interesting issue. I work for a University's Career
Services department. We collect data from recent grads. I am
recreating the online survey we use. I am trying to populate the
graduation date with 4 dates. May **, June **, August **, December **.
The "**" represents the year of graduation. To prevent having to
constantly update this survey I'd like to dynamically create this
values. So at page load I want it to check the server time and only
show the months from the past year. IE since Today is June 07 the
values would read June 07, May 07, December 06, August 06. Then in
August It would read August 07, June 07, May 07, December 06. Etc... I
am trying to think of a clever way to do this and just can not do
this. Anyone have an idea???

Jun 1 '07 #3

P: n/a
On Jun 1, 3:25 pm, "Mark Rae" <m...@markNOSPAMrae.netwrote:
"djjohnst" <djjoh...@gmail.comwrote in message

news:11**********************@p77g2000hsh.googlegr oups.com...
Anyone have an idea???

List<DateTimelstDates = new List<DateTime>();
DateTime dtmStart = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
while (lstDates.Count < 4)
{
if (dtmStart.Month == 5
|| dtmStart.Month == 6
|| dtmStart.Month == 8
|| dtmStart.Month == 12)
{
lstDates.Add(dtmStart);
}
dtmStart = dtmStart.AddMonths(-1);

}

--http://www.markrae.net
Well done, Mark!

Jun 1 '07 #4

P: n/a
"Alexey Smirnov" <al************@gmail.comwrote in message
news:11**********************@u30g2000hsc.googlegr oups.com...
Well done, Mark!
LOL!
--
http://www.markrae.net

Jun 1 '07 #5

P: n/a
"Dunc" <du**********@gmail.comwrote in message
news:11**********************@g4g2000hsf.googlegro ups.com...
DateTime dt = DateTime.Today();

for (int iLoop = 0; iLoop < 4; iLoop++)
{
ddlMyDropDown.Items.Add(new ListItem(String.Format("{0:MMM yy}",
dt)));
dt = dt.DateAdd("MM", -3, dt);
}
Suppose you start today, what are the four dates which your code will add to
the DropDownList...?
--
http://www.markrae.net

Jun 1 '07 #6

P: n/a
Just a bit of modification to Mark's code to output it as djjohnst was looking
for, in the "June XX" format):

List<StringlstDates = new List<String>();
DateTime dtmStart = new DateTime(DateTime.Now.Year, DateTime.Now.Month,
1);
while (lstDates.Count < 4)
{
if (dtmStart.Month == 5
|| dtmStart.Month == 6
|| dtmStart.Month == 8
|| dtmStart.Month == 12)
{
lstDates.Add(dtmStart.ToString("MMMM yy"));
}
dtmStart = dtmStart.AddMonths(-1);
}

ddlGradDates.DataSource = lstDates;
ddlGradDates.DataBind();

- Converted it from a list collection of DateTimes to Strings; maybe a KVP
to keep the "data" and presentation apart may be a solution if the two need
to be different.

- Added the MMMM yy to output the long Month name and short year.

HTH.

-dl

---
David R. Longnecker
Web Developer
http://blog.tiredstudent.com
"djjohnst" <dj******@gmail.comwrote in message
news:11**********************@p77g2000hsh.googlegr oups.com...
>Anyone have an idea???
List<DateTimelstDates = new List<DateTime>();
DateTime dtmStart = new DateTime(DateTime.Now.Year,
DateTime.Now.Month, 1);
while (lstDates.Count < 4)
{
if (dtmStart.Month == 5
|| dtmStart.Month == 6
|| dtmStart.Month == 8
|| dtmStart.Month == 12)
{
lstDates.Add(dtmStart);
}
dtmStart = dtmStart.AddMonths(-1);
}

Jun 1 '07 #7

P: n/a
"David Longnecker" <dl*********@community.nospamwrote in message
news:46*************************@msnews.microsoft. com...
Just a bit of modification to Mark's code to output it as djjohnst was
looking for, in the "June XX" format):
True enough - I took the final formatting "as read", and assumed that the
it was the actual date generation that was causing the OP problems... :-)
--
http://www.markrae.net

Jun 1 '07 #8

P: n/a
As of today i would want it to display the following options
June 07
May 07
Dec 06
August 06

Jun 1 '07 #9

P: n/a
"djjohnst" <dj******@gmail.comwrote in message
news:11**********************@q69g2000hsb.googlegr oups.com...
As of today i would want it to display the following options
June 07
May 07
Dec 06
August 06

Yes, I know...
--
http://www.markrae.net

Jun 1 '07 #10

P: n/a
Forgive me. I am really new to ASP.net. Where would i put that code? I
tried in the Head section and it did not work.

Jun 1 '07 #11

P: n/a
"djjohnst" <dj******@gmail.comwrote in message
news:11**********************@q75g2000hsh.googlegr oups.com...
Forgive me. I am really new to ASP.net. Where would i put that code? I
tried in the Head section and it did not work.
The code I gave you is C#, which runs server-side so it can't go in your
page's header section...

Are you using in-line server-side code or code-behind...?
--
http://www.markrae.net

Jun 1 '07 #12

P: n/a
in-line. Do you think it would be better to do code behind?

Jun 1 '07 #13

P: n/a
"djjohnst" <dj******@gmail.comwrote in message
news:11**********************@m36g2000hse.googlegr oups.com...
in-line.
OK.
Do you think it would be better to do code behind?
Wouldn't make the slightest difference...
--
http://www.markrae.net

Jun 1 '07 #14

This discussion thread is closed

Replies have been disabled for this discussion.