2016-11-14 10 views
2

J'automatise une application WPF en utilisant l'interface utilisateur codée.Comment identifier le contrôle parent le plus élevé?

Ainsi, tout en créant un objet d'un contrôle dire WpfText que je dois dire:

WpfText tag = new WpfText(parent); 

Ici j'ai besoin de passer le contrôle parent au constructeur, donc est-il un moyen de trouver le contrôle parent de un contrôle particulier dans l'application wpf?

Je peux l'enregistrer en utilisant le constructeur de test d'interface utilisateur codée, puis voir le code généré, mais est-ce le seul moyen? bcz je trouve ça trop lourd à faire de cette façon.

+0

Je ne suis pas très familier avec les tests codés de l'interface utilisateur, alors peut-être qu'il y a quelque chose ici qui me manque, mais ne pouvez-vous pas simplement appeler la propriété 'Parent' du contrôle en question? –

+0

avez-vous l'accès direct au contrôle wpf? – Steve

+0

Il s'agit d'une application wpf installée sur ma machine. Je ne sais pas quel est le contrôle parental de cela. – user2048204

Répondre

1

Dans un test d'interface utilisateur codé, la propriété TopParent de la classe UITestControl, voir here peut être utilisée. Pour remonter à travers les ancêtres d'un contrôle vers le parent supérieur, la méthode GetParent de la même classe, voir here, peut être utilisée. Il existe plusieurs autres méthodes dans la classe pour d'autres moyens de naviguer dans la hiérarchie de contrôle.