Hallo,

Du mußt auf jeden Fall auch bei der zweiten DDL das onSelectedIndexChanged 
verarbeiten. Sonst hast du zwar clientseitig die neue Anzeige, aber dein CodeBehind 
hat keine ahnung davon welcher Wert grade selektiert wurde. Entweder schreibst du den 
selectierten Wert per javascript in ein HiddenFiled und liest das dann aus wenn du 
speicherst. Oder du verarbeitest das ereignis onSelectedIndexChanged allerdings ohne 
Autopostback. Oder doch mit?!?

Dann geht es jedenfalls.....

Andreas

-----Ursprüngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im Auftrag von Andre Michel
Gesendet: Montag, 5. Juli 2004 15:06
An: [EMAIL PROTECTED]
Betreff: [Asp.net] DropDownLists - Auslesen fehlerhaft


Hallo,

ich glaube ich stehe gerade unheimlich auf dem Schlauch ... wer kann mir da
herunter helfen?

Folgendes: ich habe in einem Web Form zwei DDLs. Die zweite wird äbhängig
vom selktierten Wert der ersten gefüllt.

[code]
<asp:dropdownlist id="ddl_project_company" width="100%" cssclass="cell"
runat="server" autopostback="True"
     onload="getBranchoffices"
onselectedindexchanged="getBranchoffices"></asp:dropdownlist>

<asp:dropdownlist id="ddl_project_branchoffice" width="100%" cssclass="cell"
runat="server"></asp:dropdownlist>

[/code]

Die zugehörige CodeBehind-Funktion:

[code]
protected void getBranchoffices(object sender, EventArgs e) {
        int companyId = Int32.Parse(ddl_project_company.SelectedValue);

        BranchofficesDB service = new
BranchofficesDB(ConfigurationSettings.AppSettings["ConnectionString"]);
        ddl_project_branchoffice.DataSource =
service.ViewByCompany(companyId); // gibt 'ne ArrayList zurück
        ddl_project_branchoffice.DataTextField = "bs_branchoffice_name";
        ddl_project_branchoffice.DataValueField = "bs_branchoffice_ID";
        ddl_project_branchoffice.DataBind();
}
[/code]

Soweit klappt alles wunderbar. Doch nun das Problem: möchte ich den Inhalt
des Formulars speichern via

<asp:button id="saveProject" onclick="saveButton"
runat="server"></asp:button>

dann wird von der zweiten DDL nicht ein eventuell neuer Wert übernommen,
sondern der vormalig aus der Datenbank stammende (Postback zwischendurch?).

[code]
        protected void saveButton(object sender, EventArgs e) {
            ProjectsItem objSave = new ProjectsItem();
            .
            .
            .
            objSave.Bs_project_company_fid =
Int32.Parse(ddl_project_company.SelectedValue);
            objSave.Bs_project_branchoffice_fid =
Int32.Parse(ddl_project_branchoffice.SelectedValue);
            .
            .
            .
        }
[/code]

Habe ich das jetzt hinreichend beschrieben ? Wäre auf jeden Fall für
jegliche Hilfe dankbar (ein Schlag auf den Hinterkopf zwecks Wiederkehr des
logischen Denkens wäre auch nicht übel).

MfG,

André Michel

-- 
+++ Jetzt WLAN-Router für alle DSL-Einsteiger und Wechsler +++
GMX DSL-Powertarife zudem 3 Monate gratis* http://www.gmx.net/dsl

_______________________________________________
Asp.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net Mailingliste, Postings senden an:
[EMAIL PROTECTED]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net

Antwort per Email an