12

アプリケーションで開いたときに常に一番上に表示したいフォームがありますが、メイン フォームが最小化されているときや別のアプリケーションがナビゲートされているときはそのフォームを一番上に表示したくありません。私は自分のアプリケーションでのみ上に置きたいです。

質問の答えに従ってください:.Netでウィンドウを常に一番上に置く方法は?

    this.TopMost = true;

フォームを一番上にしますが、別のアプリケーションに移動したり、メイン フォームを閉じたりしても、フォームはまだ一番上にあります。

ユーザーがメインフォームで作業できるようにしながら、フォームをアプリケーションの上部にのみ作成するにはどうすればよいですか?

4

2 に答える 2

16

所有されているウィンドウを探しています。常に所有者の上にあり、所有者とともに最小化されます。所有されたウィンドウの良い例は、Visual Studio 内のさまざまなヘルパー ウィンドウです。それらをアンドックすることはできますが、常に VS メイン ウィンドウの上に表示されたままになります。

Show(owner) オーバーロードを使用して表示することにより、所有されたウィンドウを作成します。または、Owner プロパティを明示的に割り当てます。

于 2013-08-26T22:38:49.170 に答える
5

最上位を設定してから所有者を設定します。以下の例をご覧ください。

public Form1()
{
    InitializeComponent();
    Form2 f2 = new Form2();
    //top level not really needed
    f2.TopLevel = true;
    f2.Show(this);
}
于 2013-08-26T22:42:28.763 に答える