クラスライブラリ側に続いてアプリケーション側。どのリスト画面も基本的には次の設定・処理をしてます。
 ・BindingSource コンポーネントのデータソースに クラスライブラリ側のクラスを設定
・TextBox、Label、CheckBox のコントロールのプロパティに クラスのプロパティ(単一値)をバインド
・表示に必要なオブジェクトのリストを取得、フォームやコントロールを初期設定
・ListBox、ListView の Items プロパティに コードから項目を追加
・複数値をもつ クラスのプロパティはコードから設定
・一覧の ListBox.SelectedIndexChanged イベントハンドラの実装
・デザイナのファイルの Dispose メソッド内に オブジェクトのリストを解放するコードを追記
 メイン画面はこんな感じ。(左がドメインにログオンした時ので右がローカルログオンした時の)
 
 
 「ドメイン関連情報」ボタンはドメイン情報の表示を行うものです。
 ユーザのリストはローカル用も考慮して実装します。
 まずはデザイン画面。(クリックすると新しいウィンドウで拡大図が表示されます。)
 
※ローカルユーザ用のコントロールは後ろに隠れてます。
 実行時の画面。左がドメインログオン時で右がローカルログオン時。(クリックすると新しいウィンドウで拡大図が表示されます。)
 
 
 実装はこんな感じ。
 プライベートフィールド
Private ReadOnly users As IEnumerable(Of IUser)     'ユーザのリスト
Private ReadOnly groups As IEnumerable(Of IGroup)   'グループのリスト
Private ReadOnly groupListBox As ListBox 
Private ReadOnly userBindingSource As BindingSource コンストラクタ
 Public Sub New()
  ' この呼び出しはデザイナーで必要です。
  InitializeComponent()
  ' InitializeComponent() 呼び出しの後で初期化を追加します。
   users = DirectoryAccess.GetUsers()      'ユーザのリストを取得
  groups = DirectoryAccess.GetGroups()    'グループのリストを取得
  If DirectoryAccess.IsLogonDomain Then    'ドメインにログオンしている時
    Dim domainUsers As New List(Of DomainUser)()
    For Each user As DomainUser In users
      domainUsers.Add(user)
    Next
     userBindingSource = Me.DomainUserBindingSource
    userBindingSource.DataSource = domainUsers
    groupListBox = Me.lbox_groupdomain
    Me.pnl_local.Visible = False
  Else    'ドメインにログオンしていない時
    Dim localUsers As New List(Of LocalUser)()
    For Each user As LocalUser In users
      localUsers.Add(user)
    Next
     userBindingSource = Me.LocalUserBindingSource
    userBindingSource.DataSource = localUsers
    groupListBox = Me.lbox_grouplocal
    Me.pnl_domain.Visible = False
    Me.lbox_user.Height -= 32
    Me.Height -= 100
  End If
  Me.lbox_user.Items.AddRange(users.ToArray())    'ユーザのリストボックスにユーザを追加
   Me.lbl_count.Text = String.Format("{0} 個のオブジェクト", userBindingSource.Count)
  Me.lbox_user.SelectedIndex = userBindingSource.Position
  Call ShowBelongGroups()   '所属するグループを表示
End Sub
 イベントハンドラ
 Private Sub lbox_user_SelectedIndexChanged(
  sender As Object, e As EventArgs) Handles lbox_user.SelectedIndexChanged
   '選択されている項目を選択してもイベントが発生する
  If userBindingSource.Position = Me.lbox_user.SelectedIndex Then
    Return
  End If
   userBindingSource.Position = Me.lbox_user.SelectedIndex
  Call ShowBelongGroups()   '所属するグループを表示
End Sub
 プライベートメソッド
 Private Sub ShowBelongGroups()    '所属するグループを表示
  Dim user = DirectCast(userBindingSource.Current, IUser)   '選択されたユーザ
  groupListBox.Items.Clear()
  For Each group In groups
    If group.Native.IsMember(user.Entry.Path) Then    'グループに所属している時
      groupListBox.Items.Add(group.Name)
    End If
  Next
   If DirectoryAccess.IsLogonDomain Then    'ドメインにログオンしている時
    Dim primaryGroupID = DirectCast(user, DomainUser).PrimaryGroupID
    groupListBox.Items.Add(DirectoryAccess.GroupTokens.Item(primaryGroupID))  ‘プライマリ グループを追加
  End If
End Sub
 デザイナファイルの Dispose メソッド内の components.Dispose() の下に次のコードを追記
 DirectoryAccess.DisposeItems(users)
DirectoryAccess.DisposeItems(groups)
 続いてコンピュータのリスト。(グループリストは長いので別途書きます。)
 まずは実行時の画面。(クリックすると新しいウィンドウで拡大図が表示されます。)
 
  実装はこんな感じ。
 プライベートフィールド
Private ReadOnly computers As IEnumerable(Of Computer)    'コンピュータのリスト
Private ReadOnly groups As IEnumerable(Of IGroup)    'グループのリスト
 コンストラクタ
 Public Sub New()
  ' この呼び出しはデザイナーで必要です。
  InitializeComponent()
  ' InitializeComponent() 呼び出しの後で初期化を追加します。
   computers = DirectoryAccess.GetComputers()    'コンピュータのリストを取得
  groups = DirectoryAccess.GetGroups()    'グループのリストを取得
  Me.ComputerBindingSource.DataSource = computers
  Me.lbox_pc.Items.AddRange(computers.ToArray())    'コンピュータのリストボックスにコンピュータを追加
   Me.lbl_count.Text = String.Format("{0} 個のオブジェクト", Me.ComputerBindingSource.Count)
  Me.lbox_pc.SelectedIndex = Me.ComputerBindingSource.Position
  Call ShowBelongGroups()   '所属するグループを表示
End Sub
 イベントハンドラ
 Private Sub lbox_pc_SelectedIndexChanged(
  sender As Object, e As EventArgs) Handles lbox_pc.SelectedIndexChanged
   '選択されている項目を選択してもイベントが発生する
  If Me.ComputerBindingSource.Position = Me.lbox_pc.SelectedIndex Then
    Return
  End If
   Me.ComputerBindingSource.Position = Me.lbox_pc.SelectedIndex
  Call ShowBelongGroups()   '所属するグループを表示
End Sub
 プライベートメソッド
 Private Sub ShowBelongGroups()    '所属するグループを表示
  Dim pc = DirectCast(Me.ComputerBindingSource.Current, Computer)   '選択されたコンピュータ
  Me.lbox_group.Items.Clear()
   For Each group In groups
    If group.Native.IsMember(pc.Entry.Path) Then    'グループに所属している時
      Me.lbox_group.Items.Add(group.Name)
    End If
  Next
  Me.lbox_group.Items.Add(DirectoryAccess.GroupTokens.Item(pc.PrimaryGroupID))  ‘プライマリ グループを追加
End Sub
 デザイナファイルの Dispose メソッド内の components.Dispose() の下に次のコードを追記
 DirectoryAccess.DisposeItems(computers)
DirectoryAccess.DisposeItems(groups)
  
 おまけ
 Excel で 名前ボックス(数式バーの左にあるやつ)にセルのアドレスを入力するとそのセルを選択・表示できます。(「A1」と入力:「Application.Goto "R1C1", True」に相当)