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 объектов источника данных. |