Ist es möglich, eine Rasierersyntax zu verwenden, um Kendo-Widgets in den Inhalt eines Kendo-Fensters einzufügen? HierPlatzieren anderer Kendo-Widgets in den Inhalt von Windows für ASP.NET MVC
ist ein Beispiel dafür, was ich zu tun versucht, aber die Kendo-Widgets Laden nicht richtig:
<div id="window1"></div>
@(Html.Kendo().Window()
.Name("productWindow")
.Title("Additional Settings")
.Width(400)
.Modal(true)
.AppendTo("#window1")
.Visible(false)
.Actions(actions => actions.Minimize().Maximize().Close())
.Content(@<text>
<label asp-for="ProductId"></label>
@(Html.Kendo().DropDownList()
.Name("ProductId")
.DataTextField("Text")
.DataValueField("Value")
.BindTo(new List<SelectListItem>() {
new SelectListItem() {
Text = "Prod 1",
Value = "1"
},
new SelectListItem() {
Text = "Prod 2",
Value = "2"
},
new SelectListItem() {
Text = "Prod 3",
Value = "3"
},
new SelectListItem() {
Text = "Prod 4",
Value = "4"
}
})
.Value("2")
.HtmlAttributes(new { style = "width: 100%" })
.Deferred()
)
<span asp-validation-for="ProductId" class="text-danger"></span>
</text>)
.Deferred()
)
Ich löschte meine Antwort, wie Sie sagen, das Dropdown ist in Ordnung und die doppelte Flucht funktioniert nicht wie erwartet. Allerdings würde ich nur vorschlagen, dass wenn Sie etwas in ein Fenster laden, dann wäre es einfacher, den Inhalt in eine Partial zu brechen, wenn Sie Razor verwenden. Wenn Sie den Fensterinhalt inline einfügen, wird es sehr unhandlich sehr schnell drehen. –
Ok, lassen Sie uns sagen, ich habe es in eine Partial, die ein ViewModel hat. Wie kann ich diesen Teil des Inhalts des Fensters machen? Mein übergeordnetes Ziel ist es, ein einzelnes Formular auf der übergeordneten Seite mit Feldern zu haben, dann einige der Formularfelder in einem Kendo-Fenster. Beim Post des Formulars sollten alle Felder an das Ansichtsmodell gebunden und an die Aktion Erstellen in meinem Controller gesendet werden. Ich glaube, ich bin in der Nähe, es geht nur darum, diese Kendo-Steuerelemente in den Inhalt des Fensters zu laden. –
Ich habe eine Antwort auf Ihren Kommentar unten hinzugefügt. –