Hallo,
habe eine kurze Frage. Ich erstelle dynamisch Tabitems die wiederrum sollen sich dynamisch mit Inhalt aus einem Dictionary füllen. Um aber an die Werte zu kommen muss ich beim Aufruf den Namen des aktuell gewählten Tabitems übergeben.
<UserControl.DataContext>
<ObjectDataProvider
ObjectType="{x:Type client:ImageList}"
MethodName="LoadImages">
<ObjectDataProvider.MethodParameters>
<system:string>{Binding ElementName=tabControl, Path=SelectedItem}</system:string>
</ObjectDataProvider.MethodParameters>
</ObjectDataProvider>
</UserControl.DataContext>
Kann man hier überhaupt ein Binding machen? Wenn ja, wie? 😃 Wäre lieb wenn mir da einer auf die Spünge helfen kann.
Habe Struktur geändert und das Problem somit gelöst. Wäre aber trotzdem schön zu wissen ob es so funktioniert? Google wusste nichts. Kommt schon Leute hier sind doch ein Haufen Cleverer 😃
Hallo bl4ckY,
dass der ObjectDataProvider überhaupt Einzug in die WPF gefunden hat, halte ich bereits für einen Designfehler.
Verwende ihn also lieber nicht und löse das Problem, wie du es gelöst hast.
Hallo bl4ckY,
ich kann winSharp93 nur zustimmen! Besser wäre es, wenn du im Code-Behind den DataContext einer Klasse setzt. So ist es einfacher zwischen XAML und C#-Code zu "vermitteln".
Ich würde es ein wenig anders machen: Verwende eine anstatt der Dictionary eine ObservableCollection. Die ObservableCollection beinhaltet dann ale Einträge der TabItems. Über einen Trigger leitest du dann das Event in den Code-Behind und verarbeitest dann dort die Logik.
zero_x
zero_x | <span style="font-size: 10;">my</span><span style="font-size: 10;">CSharp</span><span style="font-size: 10;">.de</span> - gemeinsam mehr erreichen
Für längere Zeit inaktiv.
Also derzeit benutze ich den ObjectDataProvider noch um eine Listview zu füllen.
Werde mich wohl mal nach einer Alternative umsehen. Will ja kein Mist produzieren 😃
Hallo bl4ckY,
die Frage kann man so nicht beantworten. Wenn es funktioniert, dann ist es oaky. Für die Lösung eines Problems gibt es meist immer mehrere Lösungen. Wenn du dein Problem mit dem ObjectDataProvider gelöst hast, dann ist es gut. Es bleibt dann auch nur bei dem "Designfehler".
zero_x
zero_x | <span style="font-size: 10;">my</span><span style="font-size: 10;">CSharp</span><span style="font-size: 10;">.de</span> - gemeinsam mehr erreichen
Für längere Zeit inaktiv.