c# - 单击时显示面板
问题描述
请在单击按钮时显示面板方面提供一些帮助,即在我的应用程序中,我有一个 FormMenu,加载时会在其中显示 panelCentralForm。
当我单击 btnListOfActiveUser_Click 时,我设法使用以下代码在 panelCentralForm 上打开 FormListStaff:
private void btnListOfActiveUser_Click(object sender, EventArgs e)
{
FormListStaff formListStaff = new FormListStaff();
AddFormToPanel(formListStaff);
}
private void AddFormToPanel(object form)
{
if (this.panelCentralForm.Controls.Count > 0)
this.panelCentralForm.Controls.RemoveAt(0);
Form fh = form as Form;
fh.TopLevel = false;
fh.FormBorderStyle = FormBorderStyle.None;
fh.Dock = DockStyle.Fill;
this.panelCentralForm.Controls.Add(fh);
this.panelCentralForm.Tag = fh;
fh.Show();
}
我的问题是,当我单击 buttonDashboard 时,我如何以类似的方式返回给我的第一个视图,即来自中央表单面板 (panelCentralForm) 的视图。
private void buttonDashboard_Click(object sender, EventArgs e)
{
panelCentralForm.Visible = true; //something like this, p.s. this code doesn't just work as an example I wrote
}
非常感谢大家的帮助
解决方案
我的问题是我现在如何以类似的方式单击 buttonDashboard 返回给我的第一个视图
只需清除()面板,然后重新添加标签?
this.panelCentralForm.Controls.Clear();
this.panelCentralForm.Controls.Add(label1);
该标签应该仍然可以访问,即使它之前已从面板中删除,因为它是在您的设计器文件中的表单级别声明的。
推荐阅读
- spring-boot - @ManyToOne 默认是否被索引
- angular - Angular 12 未绑定到来自 webapi 的值:返回 NgFor 仅支持绑定到 Iterables,例如数组
- floating-point - 在 VHDL 和后验综合中使用常量
- odata - 将租户 ID 附加到 odata 客户端 SaveChanges 的 url
- apache-spark - Azure Databricks 增量删除上的广播超时
- javascript - .sendToDevice() 工作正常,但 .sendMulticast() 或 .sendAll() 不行 - 错误:令牌必须是非空数组
- javascript - 有“X”个参与者。参与者将被分成小组。每组最少6人,最多10人
- r - R中每个网格单元的时间序列的线性回归模型
- android - 如何在 LazyVerticalGrid 中的项目之间显示水平和垂直分隔线?
- java - 为什么编译器认可但JVM不能运行的代码?