Binden einer DropDownList in ListView InsertItemTemplate-auslösen eines Fehlers

Ich habe eine ListView, die bindet an eine LinqDataSource-Steuerelement und zeigt die ausgewählten Standorte. Die insert-Element Enthält eine dropdownlist, zieht von einem anderen LinqDataSource-Steuerelement, um alle nicht ausgewählten Standorten.

Das problem ist, ich bekomme folgende Fehlermeldung beim laden der Seite:

Databinding-Methoden wie Eval(), XPath () und Bind() können nur im Kontext eines datengebundenen Steuerelements.

Mache ich eine sehr ähnliche Einrichtung in einer anderen Seite der website, und es ist nicht, dass er uns diesen Fehler, damit bin ich ziemlich verwirrt. Ich weiß, ich kann dies umgehen, indem nicht die Bindung, manuell suchen der Kontrolle und immer den Wert, aber dies sollte funktionieren und ich verstehe nicht, warum es nicht.

Irgendwelche Gedanken?

Den besseren Teil des Quellcodes ist unten.

<asp:LinqDataSource ID="ldsLocations" runat="server" 
    ContextTypeName="ClearviewInterface.ESLinqDataContext" EnableDelete="true" EnableInsert="true"
    OnInserting="ldsLocations_Inserting" OnDeleting="ldsLocations_Deleting" 
    TableName="crmLocations" OrderBy="addr1" OnSelecting="ldsLocations_Selecting" />

<asp:LinqDataSource ID="ldsFreeLocations" runat="server" 
    ContextTypeName="ClearviewInterface.ESLinqDataContext" OrderBy="addr1" 
    TableName="v_CVLocations" OnSelecting="ldsFreeLocations_Selecting" />

<asp:ListView ID="lvLocations" DataSourceID="ldsLocations" DataKeyNames="ID" InsertItemPosition="LastItem" runat="server" >

<InsertItemTemplate>
        <tr>
            <td colspan="6"><hr /></td>
        </tr>
        <tr>
            <td colspan="2">

                <asp:DropDownList    ID="ddlFreeLocations" DataSourceID="ldsFreeLocations" DataTextField="addr1" 
                                        DataValueField="record" MarkFirstMatch="true" SelectedValue='<%# Bind("record") %>' 
                                        runat="server" />
            </td>
            <td><asp:ImageButton ID="btnAdd" CommandName="Insert" SkinID="Insert" runat="server" /></td>
        </tr>

    </InsertItemTemplate>
Binden Sie in der Dropdown - SelectedValue funktioniert nicht, wenn Dropdownlist ist in Listview... wie Sie sagten, Sie haben den gleichen setup in eine andere website, die Sie arbeiten... haben Sie sich aufgestellt dropdown in Listview oder nur in formview-oder gridview-Steuerelements??? ich suchte auch viele blogs, wie ich bin, immer dasselbe problem. aber ich fand nur eine soln. tht mit Eval anzeigen Wert und auf "insert" oder "Update" machen code in ItemInserting und itemUpdating
wenn Sie alle finden wird. zu tun, verbindlich in der dropdown-innen listview... bitte geben Sie mir zu...

InformationsquelleAutor CodeRedick | 2009-01-22

Schreibe einen Kommentar