Einen Helfer-Code für die optgroup-Funktionalität in Asp.net MVC verwenden

7

Ich habe nicht die Erfahrung, mit Helfern zu arbeiten, also bin ich bei der Verwendung eines Codes zur Hand.

Meine Anforderung ist einfach und alles, was ich brauche, ist Opt-Group-Funktionalität in DropDownListFor Extension-Methode. Bei der Suche bin ich auf diese Antwort gestoßen und habe diese in einer Datei namens MyExtensionClass.cs .

Aber ich weiß nicht, wie ich das verwenden soll oder rufe die in dieser Definition definierte Erweiterungsmethode auf. Bitte sag mir, wie kann ich das mit meiner Liste benutzen?

Im Folgenden ist der Controller-Code für eine Auswahlliste, für die ich die Erweiterungsmethoden verwenden möchte.

%Vor%

Und das ist mein Ansichtscode

%Vor%

Bitte helfen Sie mir, dies auf Erweiterungsmethode mit optgroup zu aktualisieren.

    
Pankaj Upadhyay 13.01.2012, 14:18
quelle

2 Antworten

19

Wir benutzen Serge Zabs Helfer für optgroup dropdowns. Hier ist ein Beispiel:

Das Ansichtsmodell:

%Vor%

Der Controller:

%Vor%

Die Ansicht

%Vor%

Beachten Sie, dass Sie keine reguläre SelectList verwenden können. Sie müssen eine Sammlung seiner GroupedSelectListItem-Klasse verwenden. Außerdem verwendet unsere Lösung nicht viewbag. Die Dropdown-Liste ist stark in das Viewmodel eingetippt.

Aktualisieren

Damit der HTML-Helper in Ihrer Ansicht funktioniert, muss er in der Ansicht gefunden werden können. Sie können entweder eine @ using-Direktive am Anfang der Ansicht mit Ihrem MyExtensionClass.cs-Namespace hinzufügen oder den Namespace der view-spezifischen web.config wie folgt hinzufügen:

%Vor%     
danludwig 13.01.2012, 15:29
quelle
3

Dies wurde zu ASP.NET MVC mit Version 5.2 hinzugefügt!

Mit der Eigenschaft Group in SelectListItem können Sie für jedes Element eine Gruppe angeben

Html.DropDownList() und DropDownListFor() generieren jetzt optgroup Elemente basierend auf den Gruppen, die in der Liste der Elemente enthalten sind.

    
Korayem 16.06.2016 13:46
quelle

Tags und Links