AddressOf (Operador)

Este operador (AddressOf) crea un objeto delegate que apunta a un determinado procedimiento, de hecho, podrá asignar normalmente el resultado de AddressOf a una variable delegate sin tener que crear explícitamente un objeto delegate. La diferencia con los punteros es que los delegados de Visual Basic son un tipo de referencia basado en la clase System.Delegate.

En criollo El AddressOf es la forma en la que VB maneja los delegados. Lo que hace AddressOf es decir: cuando se dispare Depurar(), yo quiero que me ejecutes el método borrarRow que debe ser Shared.

Un simple ejemplito de AdrressOf Usando el método genérico de Array, ForEach.

Recibe como parámetros:

Array: Matriz Array unidimensional de base cero en cuyos elementos se va a llevar a cabo la acción.

Action: Delegado Action que se va a ejecutar en cada elemento de array.

Sub Depurar()

Array.ForEach(dataset.Tables(“TABLA”).Select(“CAMPO_ESTADO=1”), AddressOf borrarRow)

Array.ForEach(dataset.Tables(“TABLA2”).Select(“CAMPO_ESTADO=1”), AddressOf borrarRow)

Array.ForEach(dataset.Tables(“TABLA3”).Select(“CAMPO_ESTADO=1”), AddressOf borrarRow)

End Sub

Shared Sub borrarRow(ByVal dr As DataRow)

dr.Delete()

End Sub

El Delegado borrará los campos que coincidan con la condicion del select, osea que un CAMPO_ESTADO sea igual a 1.
Saludos.

Tags: , , , , , , ,

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s