次の方法で共有


ListSourceHelper クラス

定義

IListSource インターフェイスによって定義されたメンバーを実装する際、データ ソース コントロールによって使用されます。 このクラスは継承できません。

public ref class ListSourceHelper abstract sealed
public static class ListSourceHelper
type ListSourceHelper = class
Public Class ListSourceHelper
継承
ListSourceHelper

次のコード例は、 メソッドを実装するデータ ソース クラスの設計パターンを IListSource 示しています。

#region Implementation of IDataSource

public virtual DataSourceView GetView(string viewName) {
    if (null == view) {
        view = new SomeDataSourceView(this);
    }
    return view;
}

public virtual ICollection GetViewNames() {
    ArrayList al = new ArrayList(1);
    al.Add(GetView(String.Empty).Name);
    return al as ICollection;
}

event EventHandler IDataSource.DataSourceChanged {
    add {
        ((IDataSource)this).DataSourceChanged += value;
    }
    remove {
        ((IDataSource)this).DataSourceChanged -= value;
    }
}

#endregion
#region Implementation of IListSource

bool IListSource.ContainsListCollection {
    get {
        return ListSourceHelper.ContainsListCollection(this);
    }
}

IList IListSource.GetList() {
    return ListSourceHelper.GetList(this);
}

#endregion
#Region "Implementation of IDataSource"

Public Overridable Function GetView(viewName As String) As DataSourceView Implements IDataSource.GetView
   If view Is Nothing Then
      view = New SomeDataSourceView(Me)
   End If
   Return view
End Function 'GetView


Public Overridable Function GetViewNames() As ICollection Implements IDataSource.GetViewNames
   Dim al As New ArrayList(1)
   al.Add(GetView(String.Empty).Name)
   Return CType( al, ICollection)
End Function 'GetViewNames

Event DataSourceChanged As EventHandler Implements IDataSource.DataSourceChanged

#End Region

#Region "Implementation of IListSource"

ReadOnly Property ContainsListCollection() As Boolean Implements IListSource.ContainsListCollection
   Get
      Return ListSourceHelper.ContainsListCollection(Me)
   End Get
End Property


Function GetList() As IList Implements IListSource.GetList
   Return ListSourceHelper.GetList(Me)
End Function 'IListSource.GetList

#End Region

注釈

ListSourceHelperクラスは、データ ソース コントロールによるインターフェイスの実装をIListSource簡略化するために提供されるユーティリティ クラスです。 インターフェイスを実装するが、 クラスを IDataSource 拡張 DataSourceControl しないデータ ソース コントロールでは、 インターフェイスで定義されているメソッドの独自の実装で静的 ListSourceHelper メソッドを IListSource 使用できます。 クラスから拡張されるデータ ソース コントロールは、 DataSourceControl これらのメソッドの実装を自動的に継承します。

メソッド

ContainsListCollection(IDataSource)

指定されたデータ ソース コントロールが、データ ソース ビュー オブジェクトのコレクションを格納しているかどうかを示します。

GetList(IDataSource)

データ ソース オブジェクトの IList コレクションを取得します。

適用対象

こちらもご覧ください