J'ai un contrôle Expander
avec sa propriété IsExpanded
liée à un bool dans le modèle mvvm. La liaison fonctionne bien jusqu'à ce que vous ne touchez pas l'expander. Une fois que vous cliquez sur la flèche dans l'expandeur pour développer, la liaison cesse de fonctionner. La définition de la valeur booléenne ShowPreview sur false dans le modèle ne réduit pas l'extension.Liaison WPF Expander IsExpanded
<Expander Name="pExpander"
IsExpanded="{Binding Path=ShowPreview,Mode=OneWay}"
Header="Preview">
<TextBlock Text="{Binding Path=Message, Mode=OneWay}"></TextBlock>
</Expander>
Votre objet avec la propriété ShowPreview met-il en œuvre l'interface INotifyPropertyChanged et déclenche-t-il l'événement lorsque votre propriété est modifiée? – mattythomas2000
Le mode de liaison doit être TwoWay. Dès que vous développez sur l'expander, la liaison OneWay s'effondre et l'expansion est contrôlée par cadre. – apandit
Merci! TwoWay fonctionne. Mais pourquoi ça ne marche pas? Je ne m'intéresse qu'au modèle contrôlant l'expansion et l'effondrement basé sur un événement externe qui le définit comme vrai ou faux. Si le framework étend ou réduit l'expandeur, je ne suis pas intéressé par le fait que cette valeur soit remise dans le modèle. – netraju