|
Dit artikel is gepubliceerd op zondag 31 juli 2011 op vbvoorbeelden, bezoek de website voor een recente versie van dit artikel of andere artikels.
Objecten uit de My namespace kunnen we uitgebreiden, of we kunnen er objecten aan toevoegen.
Om het My.Computer object bijvoorbeeld uit te breiden doe je dit via de Partial klasse MyComputer in de Partial namespace My.
Een My object toevoegen kan bijvoorbeeld aan de hand van een module waarin je een property definieert. Visual Basic 2010 Broncode Imports System.Net.NetworkInformation Namespace My Partial Class MyComputer Friend ReadOnly Property DhcpServerIPAddresses() As IPAddressCollection Get For Each adapter In NetworkInterface.GetAllNetworkInterfaces() Dim dhcpServers As IPAddressCollection = _ adapter.GetIPProperties().DhcpServerAddresses If DhcpServerIPAddresses Is Nothing Then DhcpServerIPAddresses = dhcpServers Else DhcpServerIPAddresses.Union(dhcpServers) End If Next End Get End Property End Class Module MyCustomExtension Private _extension As New ThreadSafeObjectProvider( Of Random) Friend ReadOnly Property Random() As Random Get Return _extension.GetInstance() End Get End Property End ModuleEnd NamespaceClass MyCustomExtensionExample Public Shared Sub Main() For Each IPAddress In My.Computer.DhcpServerIPAddresses Console.WriteLine(IPAddress.ToString()) Next Console.WriteLine( My.Random.Next()) Console.ReadLine() End SubEnd ClassDownload Visual Basic 2010 Broncode Download Visual C# Sourcecode
Console Application Output 192.168.2.1
802325202 De property Random is hier gekoppeld aan een veld van het het type ThreadSafeObjectProvider(Of Random) die via de GetInstance() method per thread die de Random property opvraagt zeker een nieuw object oplevert.
Dit artikel is gepubliceerd op zondag 31 juli 2011 op vbvoorbeelden, bezoek de website voor een recente versie van dit artikel of andere artikels.
|