Windows プラットフォームで外部アプリの UI 要素を制御するために、Teststack.white 自動化フレームワークを使用しています。これらのコマンドを使用して、アプリケーションのメインウィンドウを制御しました
// source exe file path.
private const string ExeSourceFile = @"C:\program files\myapp.exe";
//Global Variable to for Application launch
private static TestStack.White.Application Application;
//Global variable to get the Main window of myapp
private static TestStack.White.UIItems.WindowItems.Window MainWindow;
//start process for the above exe file location
var psi = new ProcessStartInfo(ExeSourceFile);
// launch the process through white application
Application = TestStack.White.Application.AttachOrLaunch(psi);
//Get the window of myapp
MainWindow = Application.GetWindow(SearchCriteria.ByText("myapp"),
InitializeOption.NoCache);
//Click the Connect button in main window
TestStack.White.UIItems.Button ConnectButton =
MainWindow.Get<TestStack.White.UIItems.Button>(SearchCriteria.ByText("Connect"));
ConnectButton.Click();
MainWindow.WaitWhileBusy();
これまで、このコードはアプリケーションを開いてメイン ウィンドウを制御し、[接続] ボタンをクリックしていました。クリックすると、新しいミニ ウィンドウが開きます。そのウィンドウを制御したいので、[OK]ボタンを押したいと思います。どうすればそのコントロールを取得できますか?