Creating Web Parts With Connections   Scott Ruble
Upcoming SlideShare
Loading in...5
×
 

Creating Web Parts With Connections Scott Ruble

on

  • 762 views

 

Statistics

Views

Total Views
762
Views on SlideShare
762
Embed Views
0

Actions

Likes
0
Downloads
3
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Creating Web Parts With Connections   Scott Ruble Creating Web Parts With Connections Scott Ruble Presentation Transcript

  • Creating Web Parts with Connections
  • Agenda
    • Previous Technology
    • Web Part Connections Concept
    • Connection Framework
    • Scenarios
    • Connecting Parts Demo
    • Supported Interfaces
    • Interface Details
    • Compatibility
    • Cross Page Connections
    • Connectable Microsoft Web Parts
    • Code Flow
    • Code Walk Through Demo/Lab
  • Previous Technology
    • Hardwired solutions
    • Parts need intimate knowledge of each other
      • DDSC.RegisterForEvent, DDSC.RaiseEvent
      • Parameterized Hyperlinks
    • Lack of flexibility
    • Developer-driven
  • Web Part Connections Concept
  • Connections Framework
    • Allows Web Parts to send & receive basic types of data; e.g., Cell, Row, List, etc.
    • Uses standardized set of interfaces
    • Allows completely independent parts to connect
    • Enables end users to form connections
      • Browser
      • FrontPage
  • Scenarios
    • Master/Detail
    • Parent/Child
    • Data Entry and Filter
    • Calculations
    • Alternate Views
    • Data Enhancement
  • Scenarios Master Detail
  • Scenarios Parent/Child
  • Scenarios Data Entry and Filtering
  • Scenarios Calculations
  • Scenarios Alternate Views
  • Scenarios Data Enhancement
  • Connecting Parts
  • Supported Interfaces
    • ICellProvider, ICellConsumer
    • IRowProvider, IRowConsumer
    • IListProvider, IListConsumer
    • IFilterProvider, IFilterConsumer
    • IParametersOutProvider, IParametersOutConsumer
    • IParametersInProvider, IParametersInConsumer
  • Interface Details Cell Scenario
  • Interface Details Cell Interfaces
    • ICellProvider
      • Events
        • CellProviderInit()
        • CellReady()
      • Event Handlers
        • CellConsumerInit()
    • ICellConsumer
      • Events
        • CellConsumerInit()
      • Event Handlers
        • CellProviderInit()
        • CellReady()
  • Interface Details Row Scenario
  • Interface Details Row Interfaces
    • IRowProvider
      • Events
        • RowProviderInit()
        • RowReady()
      • Event Handlers
        • None
    • IRowConsumer
      • Events
        • None
      • Event Handlers
        • RowProviderInit()
        • RowReady()
  • Interface Details List Scenario
  • Interface Details List Interfaces
    • IListProvider
      • Events
        • ListProviderInit()
        • ListReady()
        • PartialListReady()
      • Event Handlers
        • None
    • IListConsumer
      • Events
        • None
      • Event Handlers
        • ListProviderInit()
        • ListReady()
        • PartialListReady()
  • Interface Details Filter Scenario
  • Interface Details Filter Interfaces
    • IFilterProvider
      • Events
        • SetFilter()
        • ClearFilter()
        • NoFilter()
      • Event Handlers
        • FilterConsumerInit()
    • IFilterConsumer
      • Events
        • FilterConsumerInit()
      • Event Handlers
        • SetFilter()
        • ClearFilter()
        • NoFilter()
  • Interface Details ParamsOut Scenario
  • Interface Details ParamsOut Interfaces
    • IParmetersOutProvider
      • Events
        • ParametersOutProviderInit()
        • ParametersOutReady()
      • Event Handlers
        • None
    • IParametersOutConsumer
      • Events
        • None
      • Event Handlers
        • ParametersOutProviderInit()
        • ParametersOutReady()
  • Interface Details ParamsIn Scenario IParametersOutProvider IParametersInConsumer Transformer
  • Interface Details ParamsIn Interfaces
    • IParmetersInProvider
      • Events
        • ParametersInReady()
      • Event Handlers
        • ParametersInConsumerInit()
    • IParametersInConsumer
      • Events
        • ParametersInConsumerInit()
      • Event Handlers
        • ParametersInReady()
  • Transformers Transformers allow different interfaces to be connected to one another. * Not supported for cross page connections. Transformer Connectable in Browser Connectable in FrontPage IRowProvider to ICellConsumer * Yes Yes IRowProvider to IFilterConsumer Yes Yes IParametersOutProvider to IParametersInConsumer No Yes IRowProvider to IParametersInConsumer No Yes
  • Compatibility Interfaces Web Parts
  • Compatibility Rules
    • Reciprocal pairs or transformer exist
    • MaxConnections not exceeded
    • RunAt matches
    • Connect over only one interface
    • No circular connections
  • Cross Page Connections Features
    • Allow connecting parts on different pages
    • Can only be created in FrontPage
    • Certain interfaces supported
    Page 1 (Source) Page 2 (Target)
  • Cross Page Connections Supported Interfaces Supported cross page connections. In some cases, a transformer is used. Source Page Interface Target Page Interface IRowProvider IFilterConsumer IRowProvider IParametersInConsumer IFilterProvider IFilterConsumer IParametersOutProvider IParametersInConsumer IParametersInProvider IParametersInConsumer
  • Connectable Microsoft Parts
  • Code Flow
    • EnsureInterfaces()
      • RegisterInterface()
    • CanRunAt()
    • PartCommunicationConnect()
    • PartCommunicationInit()
      • Fire Init Events; e.g., CellProviderInit()
    • PartCommunicationMain()
      • Fire Remaining Events; e.g., CellReady()
    • GetInitEventArgs()*
    *Only needed for interfaces that require transformers.
  • Creating Connectable Parts Code Walk Through
  • Questions?