我想阅读应用程序的'DataGridView'。有一个应用程序,其中有许多子窗口。这是该应用程序的图片和包含我想要阅读的datagridview的窗口,我突出显示了我想要阅读的窗口
我通过UISPY搜索了窗口,这里是窗口和datagridview的图片。我突出了我想要阅读的控件。
我已经使用此代码(Winapi)来读取控件但我得到一个空字符串
public object WindowText(IntPtr hWnd)
{
object obj2 = "";
if (hWnd.Equals(IntPtr.Zero))
{
return "";
}
// 0x111 is WM_COMMAND
MainModule.SendMessage(hWnd, 0x111, (IntPtr)0x81eb, IntPtr.Zero);
MainModule.StrData = MainModule.StrData + Clipboard.GetText();
// 0x307 is WM_DESTROYCLIPBOARD
MainModule.SendMessage(hWnd, 0x307, IntPtr.Zero, IntPtr.Zero);
return obj2;
}
我也尝试过UI自动化,但我也没有成功阅读它 datagridview有一些每秒更新的单元格(实时数据),我想读取并存储它。 我想读取单元格和列(符号,出价,询价)和单元格内容(AUDCAD,AUDCHF)等。
答案 0 :(得分:0)
UI Spy使用UI Automation,而不是Windows消息。由于控件声称是数据网格,因此您应该能够find the item查找UIA_ControlTypePropertyId
等于UIA_DataGridControlTypeId
的元素,然后根据需要检查子项。