vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: Event auslösen 
Autor: lkatsch
Datum: 02.10.04 11:35

Ok... stoße gerade auf das nächste Problem...

Folgende Situation:

Es gibt eine Basisklasse:

Public MustInherit Class dbiObjCollection : Inherits _
  System.Collections.CollectionBase
    Public MustOverride Function ReceiveChanges(ByVal myChange As _
    clsDatabaseChanges)
    Public MustOverride Sub DoUpdate()
    Public MustOverride ReadOnly Property Data() As Collection
    Public Event HasChanges()
End Class
daraus wurde folgende Klasse abgeleitet...

Public Class collectionContries : Inherits dbiObjCollection
 
#Region "Interne Deklarationen"
    Private _contriesCollection As New Collection()
    Private _contriesCollectionChanges As New Collection()
    Private _collectionTypeName As String = "clsContries"
    Public Shadows Event HasChanges()
#End Region
 
#Region "Konstruktoren"
 
   ' Lese alle Objekte aus der Datenbank und füge sie in die Collection
 
    Public Sub New()
      ...
    End Sub
 
#End Region
 
#Region "Eigenschaften"
 
   ...
#End Region
 
#Region "Methoden und Funktionen"
 
 
   ' Suche ein Element in der Collection und liefere Referenz zurück
    Public Function GetItemRef(ByVal myContryID As Integer) As clsContries
        Return _contriesCollection.Item(myContryID.ToString)
    End Function
 
 
   ' Empfängt Änderungen in der Collection und fügt sie in die Warteschlange ein
    Public Overrides Function ReceiveChanges(ByVal myChanges As _
      clsDatabaseChanges)
        _contriesCollectionChanges.Add(myChanges, myChanges.FilterString & ":" _
        & myChanges.RowAction)
    End Function
 
   ' Arbeitet die in der Warteschlange befindlichen Änderungen ein 
    Public Overrides Sub DoUpdate()
        Dim currChange As clsDatabaseChanges
        Dim hasChangesFlag As Boolean = False
        For Each currChange In _contriesCollectionChanges
             Dim pkArray() As String
            pkArray = currChange.FilterString.Replace("AND", ";").Split(";")
            Dim _contryID As Integer = pkArray(0).Trim.Substring(pkArray( _
              0).Trim.IndexOf("=") + 1)
            Select Case currChange.RowAction
                Case "update"
                    CType(_contriesCollection.Item(_contryID.ToString), _
                      clsContries).UpdateFromDb()
                Case "insert"
                    Try
                        Dim newContries As New clsContries(_contryID, True)
                        _contriesCollection.Add(newContries, _contryID.ToString)
                    Catch
                    End Try
                Case "delete"
                    _contriesCollection.Remove(_contryID.ToString)
            End Select
            _contriesCollectionChanges.Remove(currChange.FilterString & ":" & _
              currChange.RowAction)
            hasChangesFlag = True
        Next
        If hasChangesFlag Then
            RaiseEvent HasChanges()
        End If
    End Sub
 
   ' Fügt ein dbiObjekt in die Collection und die Datenbank ein
 
    Public Sub AddItem(ByVal myContryName As String)
    Dim tmpContries As New clsContries(myContryName)
        _contriesCollection.Add(tmpContries,tmpContries.ContryID.ToString)
    End Sub
 
#End Region
 
End Class 'collectionContries
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Event auslösen1.174lkatsch29.09.04 16:20
Re: Event auslösen1.039norbert5529.09.04 16:28
Re: Event auslösen769lkatsch29.09.04 16:31
Re: Event auslösen746norbert5529.09.04 16:58
Re: Event auslösen799lkatsch29.09.04 17:01
Re: Event auslösen1.019WaldiMaywood29.09.04 17:16
Re: Event auslösen835lkatsch29.09.04 17:39
Re: Event auslösen861WaldiMaywood29.09.04 19:38
Re: Event auslösen780lkatsch29.09.04 19:48
Re: Event auslösen790lkatsch30.09.04 15:24
Re: Event auslösen795WaldiMaywood30.09.04 16:15
Re: Event auslösen767lkatsch30.09.04 16:22
Re: Event auslösen943WaldiMaywood30.09.04 18:52
Re: Event auslösen1.008WaldiMaywood30.09.04 21:11
Re: Event auslösen802lkatsch02.10.04 11:35
Re: Event auslösen836WaldiMaywood02.10.04 14:18
Re: Event auslösen730lkatsch02.10.04 14:34
Re: Event auslösen787WaldiMaywood02.10.04 14:43
Re: Event auslösen741lkatsch02.10.04 14:48
Re: Event auslösen764WaldiMaywood03.10.04 12:54
Re: Event auslösen773lkatsch04.10.04 08:39
Re: Event auslösen824WaldiMaywood04.10.04 14:32
Re: Event auslösen726lkatsch01.10.04 13:31
Re: Event auslösen740lkatsch02.10.04 11:45
Re: Event auslösen886Moderatorralf_oop02.10.04 12:08
Re: Event auslösen696lkatsch02.10.04 12:17

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel