Wie generiert man ein Steuerelement dynamisch und verleiht ihm bestimmte Caliburn-Eigenschaften?
-
10-12-2019 - |
Frage
Wir verbinden unsere ViewModels mit unseren Views über das Caliburn Framework.
Jetzt muss ich eine generieren ListBox
dynamisch über Codebehind.Etwas wie das:
this.LayoutRoot.Children.Add(new ListBox() { Width = 800, ... });
Derzeit erkläre ich dies ListBox
explizit im Xaml.Da ich Caliburn zum Platzieren von Dialogen verwende, haben wir eine
<silverlightToolkit:TransitioningContentControl caliburn:View.Model="{Binding ViewModel}" />
Mit diesem ListBox
.Wie generiert man dieses?Und die wichtigste Frage:Kann ich das anhängen? caliburn:View.Model
Eigentum?So wie ich es mit dem gemacht habe Width
Grundstück auf der ListBox
?Das TransitioningContentControl
ist in der verschachtelt DataTemplate
des ListBoxItem
.Ist es überhaupt möglich, dies per CodeBehind zu generieren?
Lösung
Die Antwort in meinem CodeBehind sah so aus:
var content = new TransitioningContentControl();
var newBinding = new Binding
{
// ...
};
content.SetBinding(View.ModelProperty, newBinding);
Man muss einfügen using Caliburn.Micro;
, obwohl.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow