Formularios de lista
Última modificación: jueves, 08 de abril de 2010
Hace referencia a: SharePoint Foundation 2010
En este artículo
Validación de datos
Personalización de acciones entre campos
En esta sección
Microsoft SharePoint Foundation 2010 ofrece nuevas y eficaces infraestructuras de formularios que le permiten personalizar formularios existentes y controles de representación de campos. Los formularios de SharePoint se basan en los controles de .NET Framework, por lo que puede usar o extender los controles de campo predeterminados de SharePoint para crear formularios más sofisticados que mejoren la experiencia del usuario con los datos de SharePoint.
Los campos usados en los formularios también son controles de Microsoft ASP.NET. Puede crear campos personalizados que extiendan la representación de los campos pero hereden la funcionalidad de los campos predeterminados. SharePoint Foundation usa las plantillas de ASP.NET para crear el código HTML estático usado para el diseño de formularios y controles de campo. Puede personalizar plantillas de control de SharePoint existentes, o bien puede crear nuevas plantillas y personalizar controles para usar las nuevas plantillas.
La personalización de los formularios de SharePoint implica realizar tareas como:
Extender los campos mediante la creación de tipos de campo personalizados en un archivo FldTypes*.xml o definiciones de campo personalizadas en un archivo Schema.xml. Las definiciones de campo determinan cómo se representan los campos en función del modo, es decir, si el formulario es para mostrar, editar o crear un elemento de lista. Para obtener más información sobre cómo extender definiciones de campo, vea Tipos de campos personalizados.
Extender controles de campo nativos de SharePoint Foundation para la representación de campos y la validación de datos. Puede crear código subyacente que se herede de controles de SharePoint y definir lógica específica necesaria para los campos de formulario personalizados.
Crear o personalizar plantillas de control para el diseño de páginas de formularios. Puede definir plantillas de control que invaliden los controles nativos.
Nota
Cuando se crean plantillas de representación de formularios personalizados en Microsoft Visual Studio IDE, por ejemplo, al copiar y pegar código del archivo DefaultFormTemplates.ascx predeterminado, el código válido puede generar errores que puede omitir de manera segura.
Validación de datos
Para comprobar que el tipo de datos, el rango, etc. son correctos, puede proporcionar un script de cliente para un campo, para que realice la validación de los datos de usuario, o el formulario puede usar código del servidor para realizar la validación según los datos del servidor. Puede agregar lógica de validación al código del servidor de las maneras siguientes:
Sobrescriba el método GetValidatedString en un tipo de campo personalizado que herede de Microsoft.SharePoint.SPField (u otra clase de campo que herede de SPField, por ejemplo SPFieldText). Esto permite validar campos en el nivel del modelo de objetos, incluidos los casos en los que los usuarios envían datos a través de formularios, así como aquellos casos en los que agregan o editan datos directamente a través del modelo de objetos.
Sobrescriba el método Validate para implementar la lógica de validación y establecer el mensaje de error para los errores de validación en un control de campo personalizado que herede de Microsoft.SharePoint.WebControls.BaseFieldControl o de un control específico de un tipo, por ejemplo TextField. Este enfoque tiene lugar en el nivel del control de campo y únicamente admite la validación en formularios.
Personalización de acciones entre campos
SharePoint Foundation no admite las acciones entre campos, como la vinculación de varios campos, de manera que la entrada de un campo desencadene una acción en otro campo o grupo de campos. Sin embargo, puede agregar controles de campo o controles de validación personalizados a formularios personalizados. Dentro de los controles personalizados, obtenga acceso a otros controles de campo a través de la propiedad FieldControlCollection del objeto Microsoft.SharePoint.SPFormContext, que puede devolverse a través de la propiedad SPContext.FormContext. Puede cambiar posteriormente el comportamiento de estos controles a través de la devolución.
En esta sección
Funcionamiento de los formularios de SharePoint
Controles de campo y formulario
Páginas de formularios de elementos de lista
Creación de plantillas de formulario personalizadas
Procedimiento para invalidar una plantilla de control predeterminada
Procedimiento para crear un control personalizado para un formulario