Pregunta Adjunte comportamiento en código detrás


Tengo el siguiente Xaml que se usa en un control de usuario que se usa como editor dentro de una cuadrícula de propiedades. La pregunta es, ¿cómo se vería la c # para adjuntar un comportamiento del código?

<i:Interaction.Behaviors>
    <igExt:XamComboEditorSelectedItemsBehavior SelectedItems="{Binding SelectedItems, ElementName=_uc}"/>
</i:Interaction.Behaviors>

Como se trata de un editor que se carga dinámicamente en un PropertyGrid, simplemente iba a crear una instancia del editor con un enlace desde el código en lugar de tener que tener diferentes archivos xaml que sean realmente cortos y que solo contengan un editor.

¿O sería más fácil simplemente volver a implementar todo el código que está en el Comportamiento y llamarlo mientras estoy creando el editor en el código que está detrás?


5
2018-05-02 22:07


origen


Respuestas:


XamComboEditorSelectedItemsBehavior behavior = new XamComboEditorSelectedItemsBehavior();
behavior.SetBinding(XamComboEditorSelectedItemsBehavior.SelectedItemsProperty, new Binding() 
    { 
        ElementName = "_uc", 
        Path = new PropertyPath("SelectedItems"), 
        Mode = BindingMode.TwoWay 
    });
Interaction.GetBehaviors(yourElementName).Add(behavior)

16
2018-05-03 07:22