[C#] コンソールアプリケーションでダイアログをモーダルで表示する

通常だと、コンソールアプリケーションはIWin32Windowを持たないのでダイアログをモーダルで表示できません。だからどうすればいいかって言うと、無ければ作ればいいじゃん。
var hidenWindow = new NativeWindow();
hidenWindow.AssignHandle(Process.GetCurrentProcess().MainWindowHandle);
var openDialog = new FolderBrowserDialog();
openDialog.ShowDialog(hidenWindow);

こうしてやることでコンソールのほうが操作できなくなって分かりやすくなるかと。

コメント

このブログの人気の投稿

[Win]Xboxコントローラーのバッテリ残量確認と電源を切るツールXControllerTool

UWPアプリでSuicaの履歴を複数件読みだす方法