J Josef Medlem sedan mars 2002 3 561 inlägg Frågan 27 nov. 2003 22:10 #1 Jag har fått hjärnsläpp så här på kvällskvisten.
Jag vill fylla en array med årtal genom en loop. Orkar inte sitta o skriva 80 årtal.
Sedan vill jag binda den till en dropdownlist.
Med den här koden (bara för att testa):
private void Page_Load(object sender, System.EventArgs e)
{
string[] aYears = new string[3] {"1950","1951","1953"};
Page.DataBind();
}
får jag bara
The name 'aYears' does not exist in the class or namespace 'ASP.Registration_aspx'
när jag binder den till dropdownlisten. Varför fungerar det inte?
T trexter Medlem sedan mars 2002 1 889 inlägg Är Page Drop Down:en? I så fall: måste du inte först skriva
Page.DataSource = abc - innan du gör databind?
J Josef Medlem sedan mars 2002 3 561 inlägg
trexter skrev:
måste du inte först skriva
Page.DataSource = abc - innan du gör databind?
Har satt det som en egenskap på dropdownen i VS.NET . Det borde väl räcka?
D Dino Medlem sedan sep. 2001 1 914 inlägg //.aspx
<asp:dropdownlist id="ddlYears" runat="server" />
//Code-behind
private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
BindData();
}
}
public void BindData(){
string[] aa = new string[80];
int z = DateTime.Now.Year + 1;
for(int i = 0; i < 80; i++)
{
aa[i] = (z - (i + 1)).ToString();
}
ddlYears.DataSource = aa;
ddlYears.DataBind();
}
T trexter Medlem sedan mars 2002 1 889 inlägg
Josef skrev:
trexter skrev:
måste du inte först skriva
Page.DataSource = abc - innan du gör databind?
Har satt det som en egenskap på dropdownen i VS.NET . Det borde väl räcka?
Tydligen inte? :q Jag testade din kod och lade till DataSOurce och det fungerade...
J Josef Medlem sedan mars 2002 3 561 inlägg
trexter skrev:
Josef skrev:
trexter skrev:
måste du inte först skriva
Page.DataSource = abc - innan du gör databind?
Har satt det som en egenskap på dropdownen i VS.NET . Det borde väl räcka?
Tydligen inte? :q Jag testade din kod och lade till DataSOurce och det fungerade...
Jasså!!? :q Använde du precis samma kod som jag?
T trexter Medlem sedan mars 2002 1 889 inlägg
Dino skrev:
int z = DateTime.Now.Year + 1;
Du menar att de är födda i framtiden? :o :p
T trexter Medlem sedan mars 2002 1 889 inlägg
Josef skrev:
trexter skrev:
Josef skrev:
trexter skrev:
måste du inte först skriva
Page.DataSource = abc - innan du gör databind?
Har satt det som en egenskap på dropdownen i VS.NET . Det borde väl räcka?
Tydligen inte? :q Jag testade din kod och lade till DataSOurce och det fungerade...
Jasså!!? :q Använde du precis samma kod som jag?
Jag bytte ut page mot något annat. Var väl det isf...
J Josef Medlem sedan mars 2002 3 561 inlägg Hur ska jag smidigast lösa det med datumen sen? Eftersom det är olika många dagar i alla månader. Någon som har någon smart lösning på det?
Som det är nu har jag en drop-down med år, en med månad och en med datum.
T trexter Medlem sedan mars 2002 1 889 inlägg EFter att man valt ett värde i listan med månader kan du köra en metod som med hjälp av DateTime.DaysInMonth kollar hur många dagar det är i den aktuella månaden. Exempel (från dok.):
const int July = 7;
const int Feb = 2;
// daysInJuly gets 31.
int daysInJuly = System.DateTime.DaysInMonth(2001, July);
// daysInFeb gets 28 because the year 1998 was not a leap year.
int daysInFeb = System.DateTime.DaysInMonth(1998, Feb);
// daysInFebLeap gets 29 because the year 1996 was a leap year.
int daysInFebLeap = System.DateTime.DaysInMonth(1996, Feb);