DOBON.NETプログラミング道掲示板

[ 最新記事及び返信フォームをトピックトップへ ]

■35571 / inTopicNo.1)  画面遷移(モーダルとモードレス)
  
□投稿者/ ねずみっくす 一般人(1回)-(2023/12/25(Mon) 18:37:27)
  • アイコン環境/言語:[Windows10 64bit VS2022 C# .NET7 ] 
    分類:[.NET] 

    Windows Formでアプリを開発しております。

    さっそくですが、

    親フォームより、子フォームを呼ぶときには、
    モードレスで呼びだしています。

    ko.show();

    そうすると、子フォームを複数立ち上げ、
    さらに親フォームも操作できますよね?

    その一つの子フォームより、孫フォームを呼び出すときに
    モーダルでフォームを呼ぶと

    mago.showDialog(this);

    他のすべてのフォームを操作できなくなりますが、
    そういうものでしょうか?

    なんとか親フォームだけでも(贅沢を言えば他の子フォームも)
    操作できるようになりませんか?

    子フォームをプロセス起動にでもすれば、要件を満たせそう
    ではありますが、なんとかプロセス起動以外でできないかと
    いろいろ調べれいます。
    みなさんのお知恵を拝借できればと思います。

    宜しくお願いします。

マルチポストを報告
違反を報告
引用返信 削除キー/
■35572 / inTopicNo.2)  Re[1]: 画面遷移(モーダルとモードレス)
□投稿者/ Azulean 大御所(544回)-(2023/12/25(Mon) 21:50:43)
  • アイコンNo35571に返信(ねずみっくすさんの記事)
    > 他のすべてのフォームを操作できなくなりますが、
    > そういうものでしょうか?

    そういうものです。

    > なんとか親フォームだけでも(贅沢を言えば他の子フォームも)
    > 操作できるようになりませんか?

    ならないので、孫 Form を Show でモードレス表示しつつ、子 Form の Enabled プロパティでなんとかしてください。

    ただし、その状態では親 Form を操作できてしまうので、親 Form の×ボタンを押されたときにどう振る舞うべきかも自分で考え、自分で実装しきる必要があります。

    こういった不思議な動きは、エンドユーザーからもわかりづらいので、要件自体見直した方が良いと思います。
違反を報告
引用返信 削除キー/
■35576 / inTopicNo.3)  Re[1]: 画面遷移(モーダルとモードレス)
□投稿者/ shu 大御所(505回)-(2024/01/16(Tue) 00:50:26)
  • アイコンNo35571に返信(ねずみっくすさんの記事)

    ShowでTopMost=True
    の動きでよいということですか?
違反を報告
引用返信 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

Mode/  Pass/


- Child Tree -