Windows フォームでは、Infragistics UltraWinTree コントロールを使用しています。
目標: UI オートメーション (UIAutomationClient.dll) を使用してすべてのツリー項目を折りたたみます。
UI オートメーションの詳細については、https ://msdn.microsoft.com/en-us/library/ms747327(v=vs.110).aspx を参照してください。
以下はコードです。
if (true == elementNode.TryGetCurrentPattern(InvokePattern.Pattern, out object patt))
{
invokePattern = patt as InvokePattern;
invokePattern.Invoke()
}
問題 :最後のツリー項目が折りたたまれていません。UI Spy で要素を見ると、最後のツリー項目の「InvokePatternAvailable」プロパティが false を示しています。最後の treeitem については、Invoke Pattern のみを使用できません。このため、上記の if 条件が満たされません。
私の質問は次のとおりです: Infragistics treeitem を折りたたむこれは正しい方法ですか、それとも Infragistics コントロールにバグはありますか?