Hallo,
suche eine Möglichkeit, anstatt fix in XAML ein
DockPanel.Dock="Left"
in Abhängigkeit eines internen Wertes eines Objektes eben wahlweise auch mal ein
DockPanel.Dock="Top"
zu setzen.
Irgendwie bin ich da mit meinen Versuchen via DataTrigger gescheitert.
Stehe da irgendwie auf dem Schlauch 😉
Wie geht das per C# Code oder als {Binding} in XAML ?
Schon mal Danke für eine Hilfe.
Hallo proper_csharp,
ich weiß leider nicht wo an dieser Stelle dein Problem liegt
da das Dock Property kann ohne weiteres per
1.Direkt per Binding
1.Datatrigger
1.Code
1.Binding mit Converter
gesetzt werden.
Zeige uns doch mal deinen Versuch dann können wir Dir auch recht schnell sagen an welcher stelle dein Problem liegt
Freundliche Grüße
Lars
Hallo proper_csharp,
per Code:
DockPanel.SetDock(target, DockMode.Left); //oder so - ich glaube, es war DockMode
als Binding (wobei Foo die Property ist, an die gebunden werden soll):
DockPanel.Dock="{Binding Path=Foo}"
als "umgekehrtes" Binding (wobei Name für den Namen des Elementes steht):
{Binding Path=(DockPanel.Dock)}
//EDIT: Syntax korrigiert
DockPanel.SetDock(target, DockMode.Left); //oder so - ich glaube, es war DockMode
es wäre Dock
Freundliche Grüße
Lars
Super, vielen Dank an alle.
War gestern abend wohl doch etwas sehr spät, als ich das versucht habe 😉
...als Binding (wobei Foo die Property ist, an die gebunden werden soll):
DockPanel.Dock="{Binding Path=Foo}" ...
ist das was ich brauche. Habe da viel zu kompliziert gedacht (DataTrigger)
Meine Property 'Foo' habe ich nun jetzt als Typ string umdefiniert, der "Left" oder "Top" liefert und gut ist. War vorher bool.
Hätte jetzt klar auch per Converter funktioniert, aber so ist es am einfachsten.
Danke.