私は再利用可能なUserControlを開発していますが、これは他の機能の中でもフルスクリーンモードを提供する必要があります。UserControlをフルスクリーンにする
しかし、これを達成するにはどうすればよいですか?
通常、コンテナフォームはUserControlではなく最大化する必要があります。
UserControlを強制的に一時的に画面全体に表示する方法はありますか?
これは通常行うべきことではないことを理解していますが、このようにする理由があります。
私は再利用可能なUserControlを開発していますが、これは他の機能の中でもフルスクリーンモードを提供する必要があります。UserControlをフルスクリーンにする
しかし、これを達成するにはどうすればよいですか?
通常、コンテナフォームはUserControlではなく最大化する必要があります。
UserControlを強制的に一時的に画面全体に表示する方法はありますか?
これは通常行うべきことではないことを理解していますが、このようにする理由があります。
一時的にコントロールを新しいボーダレスフォームに移動し、そのフォームをフルスクリーンにします。
コントロールをコンテナから削除して再利用できるようにし、フルスクリーンの枠線のないフォームを作成する必要があります。
private void OnGoFullScreenMode()
{
this.Controls.Remove(goLiveControl);
this.ShowFullScreen(goLiveControl);
}
private void ShowFullScreen(UserControl userControl)
{
Form fullScreenForm = new Form();
fullScreenForm.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
fullScreenForm.WindowState = FormWindowState.Maximized;
fullScreenForm.ShowInTaskbar = false;
userControl.Dock = DockStyle.Fill;
fullScreenForm.Controls.Add(userControl);
fullScreenForm.Show();
}
一般的に、これは適切な解決策である可能性がありますが、私の場合はほとんど受け入れられない特定のものの再初期化が必要です。私はWindows API経由で実際のUserControlを "フルスクリーン"できることを期待していました。たとえば、フルスクリーンモードを切り替えると、WebページでホストされているYouTubeプレーヤーのようになります。 – SharpAffair