如何创建一个属于一个Tab页的一组控件的全屏视图我想知道什么是正确的创建标签页控件的全屏视图的方法。该页面有其他控件,该控件订阅了各种事件。我正在尝试创建一个新的全屏表单并将所有选项卡的控件复制到该表单,但使用这种方法我需要将每个控件重新订阅到适当的处理程序。如果我只是添加引用,订阅仍然存在,但是当全屏窗体关闭时,引用的复制控件也会丢失。这可以通过Winforms对重新控制控件的支持优雅地完成。您可以将其移动到全屏的临时表单。所有正常的事件处理程序仍然照常工作。下面是一个适用于任何控件的示例实现:publicstaticvoidShowFullScreen(Controlctl){//将主机表单设置为全屏varhost=newForm();host.FormBorderStyle=FormBorderStyle.None;host.WindowState=FormWindowState.Maximized;host.ShowInTaskbar=false;//保存控件的属性varloc=ctl.Location;vardock=ctl.Dock;varparent=ctl.Parent;变种形式=父母;while(!(formisForm))form=form.Parent;//将控件移至主机ctl.Parent=host;ctl.Location=Point.Empty;ctl.Dock=DockStyle.Fill;//设置事件处理程序以将控制权恢复到表单host.FormClosing+=delegate{ctl.Parent=parent;ctl.Dock=码头;ctl.Location=loc;形式.显示();};//使用转义键退出全屏host.KeyPreview=true;host.KeyDown+=(KeyEventHandler)((s,e)=>{if(e.KeyCode==Keys.Escape)host.Close();});//然后全屏host.Show();形式.隐藏();}示例用法:以上就是C#学习教程:如何创建属于标签页的一组控件的全屏视图的全部内容。privatevoidbutton1_Click(objectsender,EventArgse){ShowFullScreen(tabControl1);}本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
