c# 新手问界面设计方面的问题,有什么方法实现此功能? 我正在设计一个windwos应用程序,form1,在form1上,左侧设计一列按钮,(如四个),右侧用了panel 控件来存放一些相关的控件。功能是,当单击左侧的按钮时,右侧的panel1控件中的内容对应显示。(单击相同的按钮显示同样的内容,单击不同的按钮显示的不同的内容)。请问高手:如何实现这样的功能? 且panel1控件的大小位置最好不变,变的是其中的一些内容。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不明白你说的是什么,给你个例子http://download.csdn.net/source/570840 你的意思是说panel里面的控件不一样,每次显示的不一样吗??你可以用多个panel,隐藏,显示控制!如果至于动态显示数据的话,查询语句,对应显示就可以了! 我的意思是,单击左侧的按钮1,在右侧现实内容,如一些控件组合;当单击按钮2时,右侧出现新的控件组合,原来的控件不见了;这些新的控件组合在同一个位置,我要问的是:原来按钮1的事件我已经设计好了,当作按钮2时,我如何清除原来的一些控件,加上我现在的按钮2需要的控件,但执行程序是,按钮1和按钮2的功能都能用,用那种方法去实现?或者说,我计划在右侧同一位置,设计panel 1 和 panel 2 ,但不行,不能正常显示的。如果这时网页,用框架就和容易实现了,但是应用程序我不知如何去做。 private void button1_Click(object sender, System.EventArgs e) { this.panel1.Visible=true; this.panel2.Visible=false; } private void button2_Click(object sender, System.EventArgs e) { this.panel1.Visible=false; this.panel2.Visible=true; }不会是说的这个意思吧 ??? 用自定义控件啊,自己写一个用户控件,然后将控件添加到你得panel例就可以了啊 刚做完这个东西 首先,谢谢所有回答的高手们。我的意思和kevin 、seeup相似,如何在设计好第一个panel 后隐藏panel和其中的控件,只有这一部做好了,才能做下一步,设计panel 2和其中的控件;问题归结到,如何隐藏panel 1 及其中的控件?在设计状态,我不知如何实现?分页空间我还没有试验,因为单击按钮1后,还需要弹出一个对话框;自定义控件的方法我还不会,还得谢谢大家的提醒。 我没太明白你的意思.如何隐藏panel 1 及其中的控件?隐藏panel 1后 panel 1里里面的控件应该都全部隐藏了啊....如还不行,那就所有控件你都写Visible属性 哦,那我在设计panel 2 时,是否只能在事件中用代码一条语句一条语句的写?不能在设计状态通过工具箱拖拉吗?如果拖拉工具箱,那么panel 1 及其中的控件怎么办?如何隐藏? 你隐藏panel 里面的控件也会全部隐藏! 在同一个区域,panel 控件最多能重叠几个?能大于三个吗? panel 不能太多了,否则会认为有嵌套关系,最外的panel 的 visiable=false ,里面的panle 不能显示的。 用自定义控件啊,自己写一个用户控件,然后将控件添加到你得panel例就可以了 panel随便放,我放过7个!你做界面怎么样无所谓,不过给用户显示的时候是一个一个的panel,你怕什么?买房子花钱,用控件不用省着,这种东西做成用户控件有点大材小用了 using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApplication1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { } private void button1_Click_1(object sender, EventArgs e) { panel1.Visible = true; panel2.Visible = false; panel3.Visible = false; panel4.Visible = false; label1.Visible = false ; label2.Visible = false; label3.Visible = false; label4.Visible = true ; } private void button2_Click(object sender, EventArgs e) { panel1.Visible = false; panel2.Visible = true; panel3.Visible = false; panel4.Visible = false; label1.Visible = false; label2.Visible = false; label3.Visible = true; label4.Visible = false; } private void button3_Click(object sender, EventArgs e) { panel1.Visible = false; panel2.Visible = false; panel3.Visible = true; panel4.Visible = false; label1.Visible = false; label2.Visible = true ; label3.Visible = false; label4.Visible = false; } private void button4_Click(object sender, EventArgs e) { panel1.Visible = false; panel2.Visible = false; panel3.Visible = false; panel4.Visible = true; label1.Visible = true ; label2.Visible = false; label3.Visible = false; label4.Visible = false; } private void panel4_Paint(object sender, PaintEventArgs e) { } }}这是我的程序,但不能正确显示,panel 1中放label 4, panel 2 中放 label 3 ,panel 3中放label 2, panel 4 中放label 1,运行结果,不显示 不知道搂主说的这个用tabcontrol是否可以实现?一定要用panel吗? http://download.csdn.net/source/586431我做了一个,不知是不是楼主要的,可以到上面地址下载来看看,也只能帮你到这边了!!!主程序运行的结果:点击Button1后的结果: 答案前面已经说得很清楚了,点按钮将相应的Panel设置为显示,将别的Panel设置为隐藏。 不一定要用panel,但是第一个按钮单击后,弹出对话框,用其他的控件能否实现,我请教的就是有没有这样的控件。同时,无论单击哪个按钮,在右边的同一区域显示不同的内容,就是相当于网页中的框架。每个按钮对应固定的内容。 可以根据显示的控件的不同写几个自定义用户控件,当点不同按钮form绑定不同自定义控件,点其他按钮时将原来panel里的controls都clear掉重新绑定, private void lblFoodMenu_Click(object sender, EventArgs e) { this.pnlRight.Controls.Clear(); //将右窗体pannal上的所有控件清空 uclFoodMenu fm = new uclFoodMenu(); //实例 用户控件页的对象 this.pnlRight.Controls.Add(fm); //添加 用户控件页到右窗体 fm.Dock = DockStyle.Fill; //将右窗体填满 } 类似outlook吧,可以用treeview mdi 实现 搞好技术这堂课!: 我下载了你的程序,试过了,能用,谢了。给你分。用tabcontrol ,应为我做的界面复杂,在单击按钮1后,还需弹出一个对话框,所以我没有使用此方法。用用户控件或自定义控件,可以实现,只是比较复杂。谢谢所有的发贴的各位。 socket 端口死掉 怎样利用datagridview里的combox下拉列表对dataGridView进行动态查询? 怎样datagridview与Excel和Xml文件之间的转换问题 dataGridView 如何在两个指定的单元格中绘制一条直线? 文本框输入字母的个数是输入汉字个数的两倍???啥原因 问一个面试的程序题,请大家进来帮忙参谋一下 Sql语句问题 这个程序怎样解释的呀???????????????? 拜托各位看看这个错误信息的原因是什么呢 怎么彻底中断BackgroundWorker中的Thread.sleep 一个关于文档注释的问题 急!!读取文本文件的问题,在线等!!
{
this.panel1.Visible=true;
this.panel2.Visible=false;
} private void button2_Click(object sender, System.EventArgs e)
{
this.panel1.Visible=false;
this.panel2.Visible=true;
}不会是说的这个意思吧 ???
刚做完这个东西
我没太明白你的意思.
如何隐藏panel 1 及其中的控件?隐藏panel 1后 panel 1里里面的控件应该都全部隐藏了啊....如还不行,那就所有控件你都写Visible属性
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;namespace WindowsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{ }
private void button1_Click_1(object sender, EventArgs e)
{
panel1.Visible = true;
panel2.Visible = false;
panel3.Visible = false;
panel4.Visible = false;
label1.Visible = false ;
label2.Visible = false;
label3.Visible = false;
label4.Visible = true ; } private void button2_Click(object sender, EventArgs e)
{
panel1.Visible = false;
panel2.Visible = true;
panel3.Visible = false;
panel4.Visible = false;
label1.Visible = false;
label2.Visible = false;
label3.Visible = true;
label4.Visible = false;
} private void button3_Click(object sender, EventArgs e)
{
panel1.Visible = false;
panel2.Visible = false;
panel3.Visible = true;
panel4.Visible = false;
label1.Visible = false;
label2.Visible = true ;
label3.Visible = false;
label4.Visible = false;
} private void button4_Click(object sender, EventArgs e)
{
panel1.Visible = false;
panel2.Visible = false;
panel3.Visible = false;
panel4.Visible = true;
label1.Visible = true ;
label2.Visible = false;
label3.Visible = false;
label4.Visible = false;
} private void panel4_Paint(object sender, PaintEventArgs e)
{ }
}
}这是我的程序,但不能正确显示,panel 1中放label 4, panel 2 中放 label 3 ,panel 3中放label 2, panel 4 中放label 1,
运行结果,不显示
private void lblFoodMenu_Click(object sender, EventArgs e)
{
this.pnlRight.Controls.Clear(); //将右窗体pannal上的所有控件清空
uclFoodMenu fm = new uclFoodMenu(); //实例 用户控件页的对象
this.pnlRight.Controls.Add(fm); //添加 用户控件页到右窗体
fm.Dock = DockStyle.Fill; //将右窗体填满
}
用tabcontrol ,应为我做的界面复杂,在单击按钮1后,还需弹出一个对话框,所以我没有使用此方法。
用用户控件或自定义控件,可以实现,只是比较复杂。
谢谢所有的发贴的各位。