使UserControl全屏

时间:2012-04-12 16:44:20

标签: c# .net user-controls fullscreen

我正在开发一个可重复使用的UserControl,其中包括其他功能应提供全屏模式。

但是如何做到这一点?

通常,容器表单应该最大化,而不是UserControl。

有没有办法强制UserControl临时占用整个屏幕?

我知道这不是通常应该做的事情,但我有理由这样做。

3 个答案:

答案 0 :(得分:3)

暂时将控件移动到新的无边框形式,并将该窗体全屏显示。

答案 1 :(得分:3)

您应该能够通过从控件的容器中移除控件来重新使用该控件,然后创建一个全屏,无边框的形式。

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();
}

答案 2 :(得分:2)

您可以在usercontrol中创建一个临时窗口以提供全屏。