Hi Leute,
wahrscheinlich 'ne Frage, die schon häufiger gestellt wurde, aber ich finde gerade keine Antwort darauf:
wie verdrahte ich in einem CustomControl das Click-Event eines darin eingebetteten Buttons mit einer Methode innerhalb der CodeBehind Datei?
Danke.
Grüße,
Hendrik
Hallo 7.e.Q,
du kannst mit GetTemplateChild (oder FindNames weil GetTemplateChild ist AFAIK deprecated) an die Elemente des Templates kommen.
Somit könntest du dann das Event registrieren.
Aber das müsste auch über Commands laufen.
Am besten du schaust dir mal ein Webcast zu MVVM an, dabei wird schön erklärt wie die Commands funktionieren.
Und rein theoretisch kannst du das auch im Template des CustomControls machen.
Gruss
Michael
Warum reichst du das Event nicht einfach durch ?
Also du lässt in der Realisierung deines CustomControls durch drücken des Buttons ein neues Event feuern, welches Bestandteil des CustomControls ist.
Es ist ein Browse Button, der ein OpenFileDialog aufrufen soll, dessen Rückgabe dann in einer ebenfalls eingebetteten Textbox hinterlegt werden soll (über eine an die Textbox gebundene DependencyProperty).
Dieser Vorgang soll innerhalb des Controls ablaufen, damit ein Benutzer des Controls das nicht jedesmal selbst neu verdrahten muss.
Commands sind wohl der gangbare Weg, das muss ich mir mal genau anschauen.