bin jetzt ein st�ckchen weiter gekommen. vielleicht kann mir einer was dazu sagen:

die funktion wird ja durch ein OnSelectedIndexChanged ausgef�hrt.

in der funktion hat "ddlModell.SelectedIndex" immer den wert 0. habe aber mit ddlModell.Items(1).Text �berpr�ft, ob die anderen eintr�ge exisiteren und sie existieren. er merkt sich also lediglich das selektierte nicht.... warum??? :-/

----- Original Message ----- From: "Michael Reichstein" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Tuesday, December 28, 2004 7:53 PM
Subject: AW: [Asp.net] DropDownList Problem



Hi Tom!

H�rt sich an, als ob deine Seite beim Postback Ihren Status verliert. Hast
du das mal �berpr�ft?

Und wo f�gst du die Items hinzu? Im Page.Load? Dann musst du um die herum
unbedingt ein

if not page.ispostback then
 ddlMarke.Items.Add("-- Hersteller w�hlen --")
           ddlModell.Items.Add("-- Modell w�hlen --")
           ddlTyp.Items.Add("-- Typ w�hlen --")
End if

Packen. Sonst l�st du bei jedem Postback einen neuen Fill der DDLs aus.

Gruss
Michael



Hi Liste -

also ich habe drei DDLs wie folgt:

<asp:DropDownList id="ddlMarke" AutoPostBack="True"
OnSelectedIndexChanged="fillddlModell"
runat="server"></asp:DropDownList>

<asp:DropDownList id="ddlModell" AutoPostBack="True"
OnSelectedIndexChanged="fillddlTyp" runat="server"></asp:DropDownList>

<asp:DropDownList id="ddlTyp" runat="server"></asp:DropDownList>

alle ddls bekommen einen startwert:
            ddlMarke.Items.Add("-- Hersteller w�hlen --")
            ddlModell.Items.Add("-- Modell w�hlen --")
            ddlTyp.Items.Add("-- Typ w�hlen --")

die ddlMarke wird mit Daten aus einer DataTable gef�llt,
sobald das Control aufgerufen wird.

w�hlt ma nun eine Marke aus, wird die funktion filldllModell
aufgerufen, die mir die zu der Marke geh�rigen Modelle in die
ddl f�llt.

das funktioniert auch wunderbar. code hierf�r:
        'Funktion, die dem ddlMarke die Hersteller zuordnet
        Sub filldllMarke(filterExp As String)
            Dim sortExp As String = "hersteller ASC"
            Dim neuerEintrag As String = ""
            Dim drArray As DataRow()
            drArray =
CType(HttpContext.Current.Cache("fahrzeuge"),DataTable). _

Select(filterExp,sortExp,DataViewRowState.CurrentRows)

            Dim i As Integer

            for i=0 to drArray.length-1
                if NOT drArray(i)("hersteller").ToString() =
neuerEintrag Then

ddlMarke.Items.Add(drArray(i)("hersteller").ToString())
                    neuerEintrag = drArray(i)("hersteller").ToString()
                End If
            next
        End Sub

nun soll das spiel ja weitergehen. wenn ich nun ein modell
ausw�hle, soll die ddl mit den dazugeh�rigen typen gef�llt
werden, was die funktion filldllTyp bewerkstelligen soll, die
eigentlich im grunde genauso aussieht, wie die fillddlModell:

        'Funktion, die dem ddlTyp die Fahrzeug-Typen zuordnet
        Sub fillddlTyp(sender As Object, e As System.EventArgs)
            Dim filterExp As String = "fahrzeugart='"& fahrzeugart _
                          & "' AND hersteller='" &
ddlMarke.SelectedItem.Text.toString.Trim() & "' AND modell='" _
                          &
ddlModell.SelectedItem.Text.toString.Trim() & "'"

            lbTest.Text = filterExp

            Dim sortExp As String = "typ ASC"
            Dim neuerEintrag As String = ""
            Dim drArray As DataRow()
            drArray =
CType(HttpContext.Current.Cache("fahrzeuge"),DataTable). _

Select(filterExp,sortExp,DataViewRowState.CurrentRows)

            Dim i As Integer

            for i=0 to drArray.length-1
                if NOT drArray(i)("typ").ToString() =
neuerEintrag Then
                    ddlTyp.Items.Add(drArray(i)("typ").ToString())
                    neuerEintrag = drArray(i)("typ").ToString()
                End If
            next
        End Sub


nur hier funktioniert es irgendwie nicht.

ich habe in meiner modell-ddl mehrere modelle. wenn ich eines
ausw�hle, macht er auch einen postback nur:

a) bleibt er nicht auf dem selektierten modell, sondern
springt immer auf
"-- Modell w�hlen --"
b) was wohl damit zusammenh�ngt, wenn ich das aktuell
ausgew�hlte modell mit
ddlModell.SelectedItem.Text.toString.Trim()  abfrage, bekomme
ich immer den string "-- Modell w�hlen --" zur�ck, obwohl ich
ja was anderes angew�hlt habe.

wie kann den sowas passieren ? ? ?

habe keinen plan, was ich da falsch mache. bitte helft mir
runter vom schlauch. :-/


tom


_______________________________________________ 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


_______________________________________________ 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