Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Можно использовать событие ListChanged объекта DataView для определения того, обновлено ли представление. Обновления, которые вызывают событие, включают добавление, удаление или изменение строки в базовой таблице; добавление или удаление столбца в схему базовой таблицы; и изменение родительской или дочерней связи. Событие ListChanged также уведомляет вас, если список строк, которые вы просматриваете, значительно изменился из-за применения нового порядка сортировки или фильтра.
Событие ListChanged реализует делегат ListChangedEventHandler из пространства имен System.ComponentModel и принимает объект ListChangedEventArgs в качестве входных данных. Вы можете определить, какой тип изменения произошел с помощью ListChangedType значения перечисления в свойстве ListChangedType объекта ListChangedEventArgs . Для изменений, связанных с добавлением, удалением или перемещением строк, новый индекс добавленной или перемещенной строки, а к предыдущему индексу удаленной строки можно получить доступ с помощью свойства NewIndex объекта ListChangedEventArgs . В случае перемещенной строки предыдущий индекс перемещаемой строки можно получить с помощью свойства OldIndex объекта ListChangedEventArgs .
DataViewManager также предоставляет событие ListChanged, чтобы уведомить вас о добавлении или удалении таблицы или изменении коллекции "Отношения" базового набора данных.
В следующем примере кода показано, как добавить обработчик событий ListChanged .
AddHandler custView.ListChanged, _
New System.ComponentModel.ListChangedEventHandler( _
AddressOf OnListChanged)
Private Shared Sub OnListChanged( _
sender As Object, args As System.ComponentModel.ListChangedEventArgs)
Console.WriteLine("ListChanged:")
Console.WriteLine(vbTab & " Type = " & _
System.Enum.GetName(args.ListChangedType.GetType(), _
args.ListChangedType))
Console.WriteLine(vbTab & "OldIndex = " & args.OldIndex)
Console.WriteLine(vbTab & "NewIndex = " & args.NewIndex)
End Sub
custView.ListChanged += new
System.ComponentModel.ListChangedEventHandler(OnListChanged);
protected static void OnListChanged(object sender,
System.ComponentModel.ListChangedEventArgs args)
{
Console.WriteLine("ListChanged:");
Console.WriteLine("\t Type = " + args.ListChangedType);
Console.WriteLine("\tOldIndex = " + args.OldIndex);
Console.WriteLine("\tNewIndex = " + args.NewIndex);
}