como gerar um controle dinamicamente e atribuir propriedades específicas de caliburn?
-
10-12-2019 - |
Pergunta
Conectamos nossos ViewModels com nossas Views através do Caliburn Framework.
Agora preciso gerar um ListBox
dinamicamente via codebehind.Algo assim:
this.LayoutRoot.Children.Add(new ListBox() { Width = 800, ... });
Atualmente eu declaro isso ListBox
explicitamente no Xaml.Como eu uso o Caliburn para colocar diálogos, temos um
<silverlightToolkit:TransitioningContentControl caliburn:View.Model="{Binding ViewModel}" />
dentro disto ListBox
.Como gerar este?E a pergunta mais importante:posso anexar o caliburn:View.Model
propriedade?Como eu fiz isso com o Width
propriedade no ListBox
?Esse TransitioningContentControl
está aninhado no DataTemplate
do ListBoxItem
.É possível gerar isso via codebehind?
Solução
A resposta no meu codebehind ficou assim:
var content = new TransitioningContentControl();
var newBinding = new Binding
{
// ...
};
content.SetBinding(View.ModelProperty, newBinding);
É preciso inserir using Caliburn.Micro;
, no entanto.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow