que je suis les réponses dans ce fil ici: Access codebehind variable in XAMLBind éléments RenderTransform à code-behind des variables
Voici ce que je suis en train de faire:
<Rectangle Name="MyRect" Fill="AliceBlue" MouseDown="Rectangle_MouseDown">
<Rectangle.RenderTransform>
<TransformGroup>
<RotateTransform Angle="0" CenterX="300" CenterY="150"/>
<TranslateTransform X="{DynamicResource TransX}" Y="0"/>
</TransformGroup>
</Rectangle.RenderTransform>
</Rectangle>
Ensuite, j'ai une variable dans mon code derrière lequel est changé. Il est appelé TransX et je l'ajouter comme une ressource:
public double TransX = 0;
public SvgPreview()
{
InitializeComponent();
SvgPreview1.Resources.Add("TransX", TransX);
}
Le rectangle ne se transforme correctement dès le début, mais les transformations ne sont pas re-rendus pour refléter les changements dans la variable TransX. Que devrais-je faire?
Aussi, je dois faire exactement la même chose pour plusieurs autres valeurs.
Je suis assez confus. Je n'ai pas une telle méthode appelée "OnNotifyPropertyChanged" –
+1, je viens d'ajouter le même exemple :) –
@Adam: Désolé, cela ressemble à ceci: public void OnPropertyChanged (String propertyName) {if (PropertyChanged! = null) PropertyChanged (this, nouveau PropertyChangedEventArgs (propertyName)); } ' – Jens