public static string WritingAvailablePatterns(IUiElement element)
{
string resultString = string.Empty;
try {
resultString = "available patterns";
resultString += "\r\n";
// 20120618 UiaCOMWrapper
// 20131209
// AutomationPattern[] supportedPatterns =
// element.GetSupportedPatterns();
IBasePattern[] supportedPatterns =
element.GetSupportedPatterns();
//UiaCOM::System.Windows.Automation.AutomationPattern[] supportedPatterns =
// element.GetSupportedPatterns();
if (supportedPatterns == null || supportedPatterns.Length <= 0) return resultString;
for (int i = 0; i < supportedPatterns.Length; i++) {
if (i > 0) {
resultString += "\r\n";
}
resultString +=
// 20131209
// supportedPatterns[i].ProgrammaticName.Replace("Identifiers.Pattern", "");
// 20131210
// (supportedPatterns[i] as AutomationPattern).ProgrammaticName.Replace("Identifiers.Pattern", "");
// (supportedPatterns[i].SourcePattern as AutomationPattern).ProgrammaticName.Replace("Identifiers.Pattern", "");
// 20140112
// (supportedPatterns[i].GetSourcePattern() as AutomationPattern).ProgrammaticName.Replace("Identifiers.Pattern", string.Empty);
supportedPatterns[i].GetType().Name.Substring(3);
}
/*
if (supportedPatterns != null &&
supportedPatterns.Length > 0) {
for (int i = 0; i < supportedPatterns.Length; i++) {
if (i > 0) {
this.richPatterns.Text += "\r\n";
}
this.richPatterns.Text +=
supportedPatterns[i].ProgrammaticName.Replace("Identifiers.Pattern", "");
}
}
*/
return resultString;
}
catch {
return resultString;
}
}