c# - 如何清除所有用户控件中的所有文本框和组合框?
问题描述
我目前正在编写一个程序,当单击最终按钮时,UserControl
它会清除程序TextBox
中ComboBox
的所有UserControls
内容。
我在我的内部创建了一个方法OverviewControl
,我试图调用一个按钮,该按钮将清除GeneralControl
和StatsControl
类中的所有文本框和组合框。
MainForm.cs
public MainForm()
{
overviewControl1.GeneralControl = generalControl1;
overviewControl1.StatsControl = statsControl1;
}
OverviewControl.cs
public partial class OverviewControl : UserControl
{
public GeneralControl GeneralControl { get; set; }
public StatsControl StatsControl { get; set; }
private void GeneralSaveButton_Click(object sender, EventArgs e)
{
ClearItems();
}
private void ClearItems()
{
foreach (Control c in GeneralControl?.Controls)
{
if (c is TextBox tb)
tb.Clear();
else if (c is ComboBox cb)
cb.SelectedIndex = -1;
}
foreach (Control c in StatsControl?.Controls)
{
if (c is TextBox tb)
tb.Clear();
else if (c is ComboBox cb)
cb.SelectedIndex = -1;
}
}
}
我期望当我单击我的按钮时,它会调用该GeneralSaveButton_Click()
方法并从 中清除所有字段,GeneralControl
但StatsControl
在调用该方法后所有字段仍保留在那里。
任何指向正确方向的帮助都会有所帮助。
解决方案
推荐阅读
- eclipse - 我在使用 AdoptOpenSDK 16 的 Eclipse 2021-03 中看到有关 WebappStructureSerializer 的错误。有人看到了吗?
- node.js - WhatsApp bot 中的 Bot 框架英雄卡或图像
- kendo-ui - 剑道调度器建议
- node.js - 在节点 js 中使用导出功能有问题
- laravel - 将所有父母视为孩子
- html - CSS 菜单设计
- blockchain - 部署一个修剪过的 Tron (TRC20) 节点
- c++ - QT - 滚动区域中的网格布局
- postgresql - 我无法将我的 TablePlus 连接到数字海洋 postgresql 数据库
- flutter - 屏幕关闭时 API 调用未获取定期数据