Bonjour,
Dans un UserControl PlayerInformation, j'ai plusieurs DP:
PlayerArmyColor
IsRedFlagOwnedByPlayer
IsBlueFlagOwnedByPlayer
IsYellowFlagOwnedByPlayer
IsGreenFlagOwnedByPlayer
Chaque Flag est un UserControl que je rends visible ou pas si le joueur possède ou non le drapeau.
À l'initialisation, le joueur ne possède que le drapeau de sa couleur.
J'ai donc le code suivant:
En fonction de la couleur j'attribue donc une valeur aux autres DP qui sont toutes de la forme suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Le fait de passer la DP à true ou false rend le control flag visible ou collapsed
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
À l'initialisation, je crée un PlayerInformation avec PlayerArmyColor = Blue :
Cela devrait donc rendre collapsed tous les drapeaux à l'exception du Bleu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
Au debuggage il passe bien là où il faut :
Mais dans Blend tout comme à l'éxécution tous les drapeaux restent visibles et pourtant les valeurs lues sont bonnes (à false), mais les collapsed n'ont semble-t-il pas été appelés ?
En fait, il semblerait que de modifier une DP au sein d'une DP ne déclenche ensuite pas tout correctement ? Par exemple, passer le IsRedFlagOwnedByPlayer à false, aurait du appeler :
En tout cas, depuis OnPlayorArmyColorChanged de la DP PlayerArmyColor ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
Car lorsque je modifie directement IsRedFlagOwnedByPlayer cela fonctionne bien ...
Pour compléter l'information, le code XAML du PlayerInformation:
Merci d'avance pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12

 

 
		
		 
         
 

 
			
			



 Modification d'une Dependency Property dans une autre DP
 Modification d'une Dependency Property dans une autre DP
				

 Répondre avec citation
  Répondre avec citation
Partager