Frage

Ich habe den folgenden Repeater Code:

 <asp:Repeater ID="repMain" runat="server" OnItemCommand="repMain_ItemCommand" EnableViewState="false">
    <ItemTemplate>
    <dmg:testcontrol runat="server" MyData=<%#Container.DataItem %>>


    </dmg:testcontrol>
    </ItemTemplate>
    </asp:Repeater>

Die Usercontrol sieht aus wie testcontrol:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TestControl.ascx.cs" Inherits="TestRepeater.TestControl" %>
<asp:Literal runat="server" ID="litMain" Text="<%#MyData.MyValue %>"></asp:Literal>
<asp:DropDownList runat="server" ID="dropdownMain"></asp:DropDownList>
<asp:Button runat="server" ID="btnMain" Text="Click Me" CommandName="Update" CommandArgument="<%#dropdownMain.SelectedValue%>"/>

Ist es möglich für mich, durch die dropdownMain.SelectedValue als Command zu schicken?

Gerade jetzt ist es eine leere Zeichenfolge.

Danke

Duncan

PS Dies bezieht sich auf ASP.NET Repeater unverbindlich nach ItemCommand aber ich dachte, die beide so unterschiedlich auseinander zu halten.

War es hilfreich?

Lösung

Ein bisschen alte Frage, aber ich mich selbst habe gerade die Antwort auf diese ein.

CommandArgument="<%#dropdownMain.SelectedValue%>"

Anforderungen wie dies stattdessen mit einfachen Anführungszeichen suchen! Alle Inline-Codes innerhalb asp.net Kontrollen haben auf diese Weise statt durchgeführt werden.

CommandArgument='<%#dropdownMain.SelectedValue%>'

Andere Tipps

Warum nicht den ausgewählten Wert erhalten, und es in der Befehlsfunktion verwenden?

(warum versuchen, es als Argument zu schicken, von dem Moment an Sie es in dem Befehl aufgerufenen Funktion erhalten und seine gleich)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top