250 likes | 351 Views
El WebPart Framework Parte 1. Jorge Oblitas Consultor Independiente Microsoft Regional Director Peru – Región Andina. Jorge Oblitas. Consultor en tecnología asociada a la gestión del Conocimiento Ha sido miembro de los programas Microsoft Regional Director (desde el 2000)
E N D
El WebPart FrameworkParte 1 Jorge Oblitas Consultor Independiente Microsoft Regional Director Peru – Región Andina
Jorge Oblitas • Consultor en tecnología asociada a la gestión del Conocimiento • Ha sido miembro de los programas • Microsoft Regional Director (desde el 2000) • Microsoft Partner Advisory Council (2002) • Soluciones Intranet premiadas en Perú y EE.UU. • Bajista desde 1984 • Aficionado a los Golden Retrievers y Beagles
Agenda • WebPartManager • WebPartZones y Web Parts • CatalogZones y CatalogParts • EditorZones y EditorParts
Web Parts • Framework para la construcción de aplicaciones tipo portal • Sigue el esquema de SharePoint Portal Server • System.Web.UI.WebControls.WebParts • Interface de usuario enriquecida con la menor cantidad de código • Edición de la estructura de páginas usando drag-and-drop • Edición de apariencia, conducta y más • Personalización – Parte 2 • Intercomunicación ("conexiones") – Parte 2
El control WebPartManager • Administra la operación de los Web Parts • Mantiene una lista de Web Parts y zonas • Administra el estado de la página (ejemplo: display mode) y dispara eventos cuando el estado cambia. • Facilita la comunicación entre Web Parts. • Administra la personalización y mucho más. • Una sola instancia por página, no tiene interface de usuario. <asp:WebPartManager ID="WebPartManager1" RunAt="server" />
El control WebPartZone • Define zonas en una página de Web Parts • Define el la disposición y apariencia por defecto de los Web Parts dentro de cada zona. <asp:WebPartZone ID="WeatherZone" DragHighlightColor="244,198,96" RunAt="server"> <PartTitleStyle BackColor="#2254B1" ForeColor="White" /> <PartStyle BorderColor="#81AAF2" BorderStyle="Solid" BorderWidth="1px" /> <ZoneTemplate> <!– Declarar Web Parts aquí --> </ZoneTemplate> </asp:WebPartZone>
Web Part Zones Zona 1 Zona 2
Web Part Chrome • Barra de título y borde que rodea el Web Part • El Look viene definido por las propiedades del WebPartZone Barra título Botón de Verbos Verbo Minimizar Verbo Cerrar Border Verbs Menu
Web Parts • Controles definidos en un WebPartZone • Web controls, user controls, custom controls • Controles que no implementan IWebPart son empaquetados internamente en GenericWebParts • Agrega propiedades: Title, Description, etc. <ZoneTemplate> <asp:Calendar Title="Calendario" ID="Calendar1" RunAt="server" /> <user:Weather Title=“Clima" ID="Weather1" RunAt="server" /> <custom:Search Title=“Buscar" ID="Search1" RunAt="server" /> </ZoneTemplate>
Web Parts Clima Web Part Acciones Web Part Buscar Web Part Noticiass Web Part Calendario Web Part
WebPartManager.DisplayMode • Obtiene y determina el display mode de la página Valor Descripción BrowserDisplayMode "Normal" display mode; no edición (default) DesignDisplayMode Permite edición de la disposición usando drag-and-drop EditDisplayMode Permite editar la apariencia y conducta de los Web Parts CatalogDisplayMode Permite agregar Web Parts a la página ConnectDisplayMode Permite establecer conexiones entre Web parts
Eventos del DisplayMode • WebPartManager.DisplayModeChanging • Indica que el display mode está por cambiar. • WebPartDisplayModeCancelEventArgs revela el nuevo display mode y permite al manejador cancelar el cambio. • WebPartManager.DisplayModeChanged • Indica que el display mode ha cambiado • WebPartDisplayModeEventArgs revela el display mode anterior
Otros tipos de Zonas • Las WebPartZones definen el contenido base • Se muestran en todo momento • Otras zonas permiten la edición de las páginas • Se muestran de manera condicional basada en el display mode Nombre Descripción CatalogZone Permite a los usuarios agregar Web parts a la página EditorZone Les Permite editar las propiedades y el layout de los Web Parts ConnectionsZone Les permite establecer conexiones entre Web parts
El control CatalogZone • Permite agregar Web Parts interactivamente • Contiene uno o más controlesCatalogPart Nombre Descripción PageCatalogPart Lista los Web parts que han sido removidos de la página DeclarativeCatalogPart Lista los Web parts declarados en <WebPartsTemplate> ImportCatalogPart Permite que los Web parts sean importados
Declarando un CatalogZone <asp:CatalogZone ID="CatalogZone1" Runat="server"> <ZoneTemplate> <asp:PageCatalogPart ID="PageCatalogPart1" Runat="server" /> <asp:DeclarativeCatalogPart ID="DeclarativeCatalogPart1" Runat="server"> <WebPartsTemplate> <!-- Declarative Web Parts go here --> </WebPartsTemplate> </asp:DeclarativeCatalogPart> <asp:ImportCatalogPart ID="ImportCatalogPart1" Runat="server" /> </ZoneTemplate> </asp:CatalogZone> DeclarativeCatalogPart
El control EditorZone • Permite la edición interactiva de Web parts • Contiene uno o más controles EditorPart Nombre Descripción AppearanceEditorPart Provee UI para la edición de títulos y otras propiedadesrelacionadas BehaviorEditorPart Provee UI para la edición de propiedades relacionadas con la conducta (ejemplo: ¿pueden ser cerrados los Web Parts?) LayoutEditorPart Provee UI para la edición del estado de presentación del Web Part(minimizado, o restaurado) PropertyGridEditorPart Provee una grilla de propiedades para la edición de propiedadespersonalizadas
Declarando un EditorZone <asp:EditorZone ID="EditorZone1" Runat="server"> <ZoneTemplate> <asp:AppearanceEditorPart ID="AppearanceEditorPart1" Runat="server" /> <asp:BehaviorEditorPart ID="BehaviorEditorPart1" Runat="server" /> <asp:LayoutEditorPart ID="LayoutEditorPart1" Runat="server" /> </ZoneTemplate> </asp:EditorZone>
PropertyGridEditorPart • Permite editar propiedades personalizadas • Muestra propiedades marcadas [WebBrowsable] string _stocks; // e.g., "MSFT,INTC,AMZN" [WebBrowsable] public string Stocks { get { return _stocks; } set { _stocks = value; } } Permite a la propiedad aparecer en elPropertyGridEditorPart Como apaece la propiedaden el PropertyGridEditorPart
Lo que se verá en el próximo Webcast • Web Part Connections • Personalización • Por usuario • Compartida • Providers • Web Parts personalizados • Verbos personalizados • Exportando WebParts
Mis datos • Jorgeo@icuadrado.com • http://www.icuadrado.com Visítanos para ver la agenda de eventos en vivo y próximos Webcastwww.icuadrado.com ... Muy pronto tendremos en Lima a uno de los Gurús de Team System