Announcement

Collapse
No announcement yet.

Prozedur als Parameter übergeben / Delegate oder nicht...

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Prozedur als Parameter übergeben / Delegate oder nicht...

    Habe aktuell folgendes Problem:

    Ich habe eine Klasse, die mir bei der Erzeugung unter anderem eine FileSystemWatcher Instanz zurückliefert.

    Mein Problem ist nun das Eventhandling. Nachdem ich eine Instanz meiner Klasse erzeugt habe...

    dim test as new meine_klasse

    ...kann ich mir mit...

    test.loadfromfile("balbla.bla",...)

    ...eine neue FileSystemWatcher Instanz erzeugen lassen, die bereits mit den, in der Datei enthaltenen Angaben initialisiert ist. Die Instanz ist dann über...

    test.FSW

    ...zugänglich. Und nun fängt das Problem an, ich würde der loadfromfile Funktion gerne noch Funktionen mitgeben, die die Events der neuen FileSystemWatcher Instanz handeln sollen (z.B. me.FSWRenamed, ...).

    Habe heute schon rumprobiert, aber bin nicht so recht vorangekommen. Muß man nun Delegates verwenden (ein einfaches "ja" bringt mich nicht weiter, bin eher auf der Suche nach einem guten Beispiel) oder nicht?

    Code kann ich im Moment nicht pasten, geg. morgen (weiß, ich so ein wenig suboptimal, aber vielleicht kennt ja jeman schonmal ein gutes Beispiel, das könnte mich auch weiterbringen - Hauptproblem ist die AddHandle Stelle in meiner Klasse).

  • #2
    hallo

    Beispiel:
    [highlight=vbnet]


    Public Class Test

    Dim FS as new FileSystemWatcher

    Public Sub Load(Proc as IO.FileSystemEventHandler )
    AddHandler FS.Event, Proc
    End Sub
    End Class
    Public Class Form1

    Dim TestVar as new Test

    Public Sub Testproc
    Dim ProcDelegate as IO.FilesystemEventHandler = addressof me.TestEventHandler
    TestVar.Load(ProcDelegate)
    End Sub

    Public Sub TestEventHandler(Sender as Object, E as Eventargs)
    msgbox("Event")
    'Achtung allgemein kann es in dieser Prozedur zu problemen wegen Threadübergreifendenzugriffs vom Filesystemwatcher kommen
    End Sub

    End Class



    [/highlight]

    so wirds ohne Probleme kompiliert werden aber ob dann die Events ankommen weiß ich nicht hab noch nicht mit dem Filesystemwatcher gearbeitet und teste noch
    Zuletzt editiert von das-d; 23.09.2009, 19:38.
    Unsere Jugend ist unerträglich, unverantwortlich und entsetzlich anzusehen! - Aristoteles

    Comment


    • #3
      hey danke, werde ich morgen mal antesen :-)

      Comment

      Working...
      X