我正在开发一个可重用的用户控件,除其他功能外,它还应提供全屏模式。
但是如何做到这一点呢?
通常,应该最大化容器窗体,而不是 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();
}
暂时将控件移动到一个新的无边框窗体并使该窗体全屏显示。
您可以从用户控件中创建一个临时窗口以提供全屏显示。