首页 > 其他分享 >winform切换页面

winform切换页面

时间:2023-11-05 18:44:06浏览次数:41  
标签:button TopMost TopLevel 切换 new winform true btnShadow 页面

布局效果如下图:

  •  首先在主窗体后台代码声明需要打开的窗体变量,代码如下:
1     public partial class Form1 : Form
2     {
3         Button btnShadow;//作为中间寄存button,用于显示
4         Home home;
5         Setting setting;
6         Record record;
7         Query query;
8         Statistics statistics;
  • 主窗台构造函数内对实例化需要打开的窗体,并进行熟属性设置,代码如下:
 1         public Form1()
 2         {
 3             InitializeComponent();
 4             //Region = System.Drawing.Region.FromHrgn(CreateRoundRectRgn(0, 0, Width, Height, 25, 25));
 5 
 6             //初始化各窗口
 7             home = new Home() { TopLevel = false, TopMost = true, Dock = DockStyle.Fill };
 8             setting = new Setting() { TopLevel = false, TopMost = true, Dock = DockStyle.Fill };
 9             record = new Record() { TopLevel = false, TopMost = true, Dock = DockStyle.Fill };
10             query = new Query() { TopLevel = false, TopMost = true, Dock = DockStyle.Fill };
11             statistics = new Statistics() { TopLevel = false, TopMost = true, Dock = DockStyle.Fill };
12 
13             //默认进入为主页和主按钮
14             LoadWindow(home);
15             SelectBarAndBtnShadow(this.button1);
16         }
  • 创建加载窗体公共方法LoadWindow,具体代码如下:
1         private void LoadWindow(Form form)
2         {
3 
4             this.panel3.Controls.Clear();
5             form.FormBorderStyle = FormBorderStyle.None;
6             this.panel3.Controls.Add(form);
7             form.Show();
8         }
  • Statistics按钮切换页面的后台代码如下:
1         private void button2_Click(object sender, EventArgs e)
2         {
3             this.lblTitle.Text = "Statistics";
4             SelectBarAndBtnShadow(sender);
5             LoadWindow(statistics);
6 
7         }
  • 选中侧边栏菜单是,显示选中状态的效果的代码如下:
 1         private void SelectBarAndBtnShadow(object btn)
 2         {
 3             if (btnShadow != null)
 4             {
 5                 btnShadow.BackColor = Color.FromArgb(24, 30, 54);
 6             }
 7 
 8             Button button = (Button)btn;
 9             this.leftPanel.Height = button.Height;
10             this.leftPanel.Top = button.Top;
11             this.leftPanel.Left = button.Left;
12 
13 
14             btnShadow = button;
15             btnShadow.BackColor = Color.FromArgb(46, 51, 73);
16 
17         }

 

标签:button,TopMost,TopLevel,切换,new,winform,true,btnShadow,页面
From: https://www.cnblogs.com/davisdabing/p/17810880.html

相关文章

  • Winform高亮显示图标和标题
    效果下如图: 创建ActivateButton公用方法,代码如下:privatevoidActivateButton(objectsenderBtn,Colorcolor1,Colorcolor2,Colorcolor3){if(senderBtn!=null){DisableButton();//B......
  • 获取图片并进行图片切换(FolderBrowserdDialog and OpenFileDialog用法)
    winform布局如下图: 获取文件夹按钮,通过FolderBrowserDialog对话框,选择本地电脑文件路径,后台代码实现如下:privatevoidbutton1_Click(objectsender,EventArgse){folderBrowserDialog1.Description="请选择需要保存的路径";......
  • 重定向到 Next.js 应用程序文件夹中的 404 Not Found 页面:分步指南
    问题描述:你希望将所有的404请求重定向到Next.js应用程序文件夹中的404NotFound页面。解决方案:确保你已经在你的Next.js应用程序中创建了一个自定义的404页面。你可以在你的pages目录下创建一个名为404.js(或404.tsx)的文件,并在其中编写你的自定义页面内容。在Next.j......
  • C# winform捕获程序异常内容
    staticvoidMain(){Application.EnableVisualStyles();Application.SetCompatibleTextRenderingDefault(false);Application.ThreadException+=Application_ThreadException;Application.Run(newForm1());}privatestaticvoidApplication_Threa......
  • js tab跟随滑动切换tab
    js:letanchors=document.querySelectorAll("div[data-anchor-index]");letobserver=newIntersectionObserver((entries)=>{entries.forEach((entry)=>{if(entry.isIntersecting){letseq=Number(entry.target.ge......
  • 前端开发笔记[4]-Gradio搭建演示页面
    摘要使用Gradio在Python环境搭建图像处理和视频处理的演示网页.Gradio简介[https://www.gradio.app]Gradio是一个开源的Python库,用于构建机器学习和数据科学演示应用。它可以帮助AI算法工程师将训练的模型分享给大众,并赋予模型与用户交互的能力。使用Gradio,你可以通过几行代码......
  • c# winform获取gridview数据
    //取单元格数据三种方法this.dataGridView1[e.ColumnIndex,e.RowIndex].Value.ToString();//第一种取法this.dataGridView1.Rows[e.RowIndex].Cells["你所要取值的列名称"].Value.ToString();//第二种取法this.dataGridView1.Cur......
  • 一级页面、二级页面和三级页面的区别
    一级页面也就是首页,二级页面是链接到首页的,三级页面链接到二级页面。就拿来说,它的首页就是一级页面,点击百度出现的页面就是二级页面,在百度页面点击任何一项出现的页面就是三级页面。这个就像分类,下面有小分类。比如一级频道叫“电脑网络”,那电脑网络下面再分“硬件、软件、互联网”......
  • C# winform控件大小跟随窗体大小改变
    intiFormWidth,iFormHeight;//初始窗体宽高//窗体加载事件privatevoidForm1_Load(objectsender,EventArgse){iFormWidth=this.Width;//初始宽iFormHeight=this.Height;//初始高WriteIn_Tags(this);//记录初始控件信息}//调整控件大小事件privat......
  • 如何在Razor视图页面中导入命名空间?
    内容来自DOChttps://q.houxu6.top/?s=如何在Razor视图页面中导入命名空间?如何在Razor视图页面中导入命名空间?终于找到了答案。@usingMyNamespace对于VB.Net:@ImportsMynamespace如果您想在应用程序中包含命名空间,请查看@ravyamiry的回答。......