使用下拉菜单切换表单?

Posted

技术标签:

【中文标题】使用下拉菜单切换表单?【英文标题】:Switching forms with a Drop-Down menu? 【发布时间】:2020-10-14 15:05:31 【问题描述】:

所以我不太擅长 C#,但我认为一个很酷的想法是通过下拉菜单来学习表单切换。我有以下代码可以切换形式,但变量是在错误的部分或其他地方声明的,因为即使指定了它们也会切换到错误的形式。即使 Builder 是下拉列表的选定索引,“Builder”也会打开“Pumper”选项卡。

    if
          (bunifuDropdown1.selectedIndex.ToString() == "Builder") ;
        Decoder f4 = new Decoder();
        Pumper f3 = new Pumper();
        Builder f2 = new Builder();
        f2.Show();
        f3.Hide();
        f4.Hide();
        this.Hide();


        if
          (bunifuDropdown1.selectedIndex.ToString() == "Pumper") ;
        f3.Show();
        f2.Hide();
        f4.Hide();
        this.Hide();

我们将不胜感激。谢谢。

【问题讨论】:

您共享的代码无法编译。你能分享一个工作代码吗? bunifuDropdown1.selectedIndex 返回下拉列表中选择的项目编号。你应该使用bunifuDropdown1.selectedItem 您需要在多行 if 块周围使用括号 ....。而且您需要删除 if 条件上的 ;。如所写,您可以完全删除 if 语句而不改变代码的行为。 谢谢大家,我要去看看这个和 Chetan,这不是整个项目代码,但如果你想要它,我可以显示。 【参考方案1】:

我大致了解你想要什么,但说实话,我很懒惰写错误的代码来实现你的目标...... 我会马上告诉你——你有一个坏主意:)。因为您将在每个独立的表单中包含导航菜单,并且您需要考虑如何想出一个通用的数据对象(例如一个类),该对象将同时在所有表单中可用,并在执行列表中填写数据(也许它会帮助你“ApplicationContext 类”https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.applicationcontext?view=netframework-4.7.2)。

最好的方式,比如,做一个表格,放置“ComboBox”(ps,为什么需要第三方图形框架?...)对象(添加必要的元素),添加“ Panel”(或“TabControl”)到表单,并将必要块的显示链接到“ComboBox”数据更改事件。

例如:

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
    
        if ((string)comboBox1.SelectedItem == "1")
        
            panel1.Visible = true;
            panel2.Visible = false;
        
        if ((string)comboBox1.SelectedItem == "2")
        
            panel2.Visible = true;
            panel1.Visible = false;
        
        else
        
            panel1.Visible = false;
            panel2.Visible = false;
        
    

【讨论】:

我为其他窗体的 UI 使用第三方框架,但在普通 Windows 窗体中找不到下拉菜单。编辑:感谢您的提示/帮助,非常感谢。 :) Em...这不是普通的“组合框”吗? p.s.推荐amazon.com/Pro-NET-Core-Foundational-Programming/dp/1484257553

以上是关于使用下拉菜单切换表单?的主要内容,如果未能解决你的问题,请参考以下文章

使用 jQuery 提交表单下拉菜单

表单联动总结

pyside2下拉菜单切换页面

引导导航下拉菜单切换问题

vue+css动画实现下拉菜单上、下箭头切换

jquery下拉菜单,切换类