フォームの一部としてCRUD操作を実行する剣道UI ASP.NET MVCグリッドがあります。次のスニペットでは、ユーザーの名前を表示するが、ユーザーのIDの値を持つインライン編集可能なコンボボックス(ユーザー名とIDにバインドされている)を含む列を表示しようとしています。GridTemplateがEditorTemplateをグリッドフォームでオーバーライドしないようにする
書類を提出適切に形成するが、ユーザIDではなく名前を表示:
columns.ForeignKey(p => p.UserId, (System.Collections.IEnumerable)ViewBag.Users, "SystemUserId", "Name").Title("User").EditorTemplateName("ComboBoxInForm").Visible(true).ClientTemplate("#= UserId #" +
"<input type='hidden' name='Users[#= index(data) #].UserId' value='#= UserId #' />"
);
ComboBoxInForm EditorTemplate:
@model object
@(
Html.Kendo().ComboBoxFor(m => m)
.BindTo((SelectList)ViewData[ViewData.TemplateInfo.GetFullHtmlFieldName("") + "_Data"])
)
Iは、フォーム入力タグを提供ClientTemplateを削除する場合、ユーザーの名前は、ユーザーのIDの値ではなく、表示されているものです。しかし、フォームの一部としてバッチで提出する必要があるので、フォーム入力タグを削除することはできません。
は、フォーム(無入力タグ)を提出しないが、正確にというのIDよりもユーザー名が表示されます。私はグリッド列が表示されるようにこれら二つの要件を組み合わせるために使用することができますどのような解決策
columns.ForeignKey(p => p.UserId, (System.Collections.IEnumerable)ViewBag.Users, "SystemUserId", "Name").Title("User").EditorTemplateName("ComboBoxInForm").Visible(true);
名前(しかし、IDの値を持つ)とフォーム入力タグも提供しますか?