asp.net - route - tag helper asp net core 2
¿Cuál es la mejor manera de tener dos plantillas diferentes en modo de edición y modo de inserción? (1)
Tu método es la mejor forma que he encontrado de utilizar diferentes conjuntos de controles en una plantilla de elemento de grilla. Puede tener los elementos que desee en la plantilla de edición, luego manipularlos libremente en ItemDataBound ().
Tengo un control RadGrid con implementación de formulario de edición de plantilla. Necesito tener un subconjunto de controles en la plantilla del modo de edición diferente del subconjunto de controles en la plantilla del modo agregar. Encontré una manera de hacer ese escenario, pero no estoy seguro de que sea la mejor manera.
Hice esto al establecer los controles en paneles. En el código subyacente, verifiqué el tipo de formulario y, dependiendo de la condición, estos controles se activan o desactivan configurando la propiedad de visibilidad con este fragmento:
protected void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridEditFormInsertItem && RadGridConferences.MasterTableView.IsItemInserted)
{
Panel UploadConferenceImage = e.Item.FindControl("UploadConferenceImage") as Panel;
Panel UploadConferenceNewsletter = e.Item.FindControl("UploadConferenceNewsletter") as Panel;
Panel ConferenceImagePanel = e.Item.FindControl("ConferenceImagePanel") as Panel;
RadEditor RadEditorConferenceTxtBody = e.Item.FindControl("RadEditorConferenceTxtBody") as RadEditor;
if (UploadConferenceImage != null && UploadConferenceNewsletter != null && ConferenceImagePanel != null)
{
UploadConferenceImage.Visible = true;
UploadConferenceNewsletter.Visible = true;
ConferenceImagePanel.Visible = false;
}
else
return;
if (RadEditorConferenceTxtBody != null)
{
RadEditorConferenceTxtBody.Style.Add("margin-top", "55px");
}
else
return;
}
}
Otra opción que encontré es crear mi propio editor personalizado.