質問

私は使用しようとしています ホワイトプロジェクト WPFアプリケーションの自動テストを作成します。私がインフラジスティックコントロールと対話しようとするまで、それはすべて順調に進んでいます。誰かがこのセットアップの経験がありましたか?XamribbonやXamoutlookbarと対話する方法の例を投稿することができますか?

役に立ちましたか?

解決

少し一般的な答え私は恐れていますが、ホワイトがあなたを助けていない場合は、Microsoft UI Automationを直接使用できます。

まず、コントロールを見つけます。 WPFの「名前」がある場合、おそらく名前と一致する自動化IDがあります。

AutomationElement element = AutomationElement.Root.FindFirst(
    TreeScope.Descendants,
    new PropertyCondition(AutomationElement.AutomationIdProperty, <whatever>))

または、主にテキストまたはタイトルにマップするNameProperty、ControlTypepropertyまたはclassPropertyのようなものを使用することもできます。 Findallをいつでも使用して、利用可能なコントロールに関する詳細情報を提供できます。

コントロールを見つけたら、サポートされているパターンとプロパティを印刷してください。

element.GetSupportedPatterns()
element.GetSupportedProperties()

プロパティは情報を返します。パターンは、listitempattern、gridpatternなどのものであり、より多くのコンポーネント固有の値にアクセスできます。必要なものを提供するパターンまたはプロパティを見つけることができます。白はこれの上に部分的に構築されているため、使用できる白いコンポーネントを見つけるのに役立つ可能性があります。例えば:

((TogglePattern)Element.GetCurrentPattern(TogglePattern.Pattern)).Toggle()

Snoopは、印刷物を通過せずにこの情報を取得するのに役立つアプリです。 http://snoopwpf.codeplex.com/

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top