La liaison de données ne sera pas en mesure de détecter des assignations à des “topLevelApplication”
Je suis de la migration d'une application de Flex 3 Flex 4.
Dans certains cas, il y a des fenêtres popup dont la largeur et la hauteur sont liées à l'application de la largeur et de la hauteur.
width="{Application.application.width - 24}"
height="{Application.application.height - 32}"
Application.l'application est supprimée de la version 4.0. j'ai donc remplacé ce avec
width="{FlexGlobals.topLevelApplication.width - 24}"
height="{FlexGlobals.topLevelApplication.height - 32}"
Maintenant que le compilateur donne l'avertissement que les liaisons de données ne peut pas être détecté pour topLevelApplication.
Liaison de données ne sera pas en mesure de
détecter les affectations à
"topLevelApplication"
Ma question est: Est-il une autre (peut être liée) propriété quelque part que je peux utiliser pour obtenir les mêmes fonctionnalités qu'avant?
Est-il une raison pour laquelle vous en avez besoin pour être pouvant être liées? Je ne pense pas que la hauteur et la largeur de topLevelApplication changer, sauf si le fichier swf ou le navigateur est redimensionnée à quel point l'ensemble de vos commandes sera redessiné en tout cas (à moins que je me trompe, bien sûr).
OriginalL'auteur Bocaxica | 2010-12-21
Vous devez vous connecter pour publier un commentaire.
Il suffit de créer une variable de type objet et de le rendre bindable :
Et ensuite utiliser la variable.
OriginalL'auteur Mahima
Si vous utilisez
{this.screen.height}
vos avertissements devraient disparaître.Tim
OriginalL'auteur Tim
Cela devrait fonctionner avec un cast:
La raison pourquoi il ne fonctionne pas avec votre code actuel est parce que FlexGlobals.topLevelApplication est tapé comme un Objet.
Flex 4.0 ou 4.1?
Flex SDK 4.1 🙂
J'aurais dû lire l'erreur de mieux. Il ne peut pas se lier à "topLevelApplication" qui, en fait, n'est-ce pas bindable sur FlexGlobals. C'est une déception. Peut-être que vous pouvez lier à la classe systemManager.la hauteur de la place.
OriginalL'auteur James Ward
J'ai été bloqué pendant une demi-heure et a trouvé que
Bindable
ne fonctionne qu'avec un grand "B", je l'ai fait et il a résolu mon problème.Ainsi, au lieu de bindable il suffit d'écrire
Bindable
que la classe estbindable.Bindable
.OriginalL'auteur Nilesh Mahant
j'ai été aux prises avec un avertissement similaire, mais au lieu d'un objet (problème qui est résolu avec l' [Bindable] préfixe) j'ai été en utilisant une VBox. J'avais besoin de changer la source d'une image en fonction du nombre d'enfant ma vbox. Donc la solution c'est seulement à l'aide de "ce" lol. voici un exemple:
Si vous ne faites pas de "ce" de l'IDE va vous montrer un message d'avertissement semblable à celui que vous avez avec l'objet. J'espère que cela aide les autres!
En Ce Qui Concerne Meilleur
OriginalL'auteur Gabriel Figox Vargas Fierro
Créer un bindable type de variable de votre demande, je.e myApp pour obtenir toutes les variables définies dans myApp ou de complétion de code:
Et ensuite utiliser la variable.
OriginalL'auteur Mamoon Mallick