SharePoint Web Part Default Interfaces: Listing 1.

Using a Boolean variable to call members in the provider.

Public Class MyConsumerWebPart
  Inherits WebPart

Protected Overrides Sub CreateChildControls()
  Dim control As Control = Page.LoadControl(...path to user control...)
  Controls.Add(control)
End Sub

Private _Button1_Click As Boolean
Public Sub Button1_Click(sender As Object, e As EventArgs)
  _Button1_Click = True
End Sub

Dim _prov As MyProviderWebPart
 <ConnectionConsumer("First Name") > _
Public Sub MyConsumerMethod(prov As MyProviderWebPart)
  _prov = prov
  If _Button1_Click Then
    Dim uc As MyConsumerWebPartUserControl
    uc = CType(Me.Controls(0), MyConsumerWebPartUserControl)
    Dim lb As Label
    lb = CType(uc.FindControl("DisplayFirstNameLabel"), Label)
    lb.Text = _prov.ProvideFirstName()
  End If
End Sub

End Class
 </Language Lab >

 Listing 2. Binding a DataView to a DataGrid.
Protected Overrides Sub CreateChildControls()
  Dim dg As New DataGrid
  Controls.Add(dg)
  Dim lt As New Literal
  lt.Text = "Average complete: "
  Controls.Add(lt)
  Dim lb As New Label
  Controls.Add(lb)
End Sub

Dim _dv As DataView
Public Sub MyCallbackMethod(dv As DataView)
  _dv = dv
  Dim dg As DataGrid
  dg = CType(Controls(0), DataGrid)
  dg.DataSource = dv
  dg.DataBind()
End Sub

About the Author

Peter Vogel is a system architect and principal in PH&V Information Services. PH&V provides full-stack consulting from UX design through object modeling to database design. Peter tweets about his VSM columns with the hashtag #vogelarticles. His blog posts on user experience design can be found at http://blog.learningtree.com/tag/ui/.