如何通过CheckBox控制TextBox的值:选中时显示指定未绑定复选框内容
实现CheckBox控制TextBox显示内容的方案
核心思路
给用于控制的CheckBox绑定CheckedChanged事件,在事件触发时根据选中状态切换TextBox的内容:
- 选中时,读取另一标签页中目标CheckBox的内容并赋值给TextBox
- 未选中时,将TextBox重置为预设的默认值
代码示例(以C# WinForms为例)
假设控件命名如下:
- 控制开关:
chkToggleDisplay - 显示用文本框:
txtResult - 另一标签页(
tabPage2)中的目标CheckBox:chkSource
直接在窗体类中添加事件处理方法:
private void chkToggleDisplay_CheckedChanged(object sender, EventArgs e) { if (chkToggleDisplay.Checked) { // 读取目标CheckBox的文本内容(若要显示选中状态,可替换为判断语句) txtResult.Text = chkSource.Text; // 显示选中状态的写法: // txtResult.Text = chkSource.Checked ? "已选中" : "未选中"; } else { // 设置默认显示值 txtResult.Text = "默认内容"; } }
注意事项
- 若目标CheckBox是动态添加到标签页的,可通过标签页的Controls集合查找控件实例:
var targetCheckBox = tabControl1.TabPages["tabPage2"].Controls["chkSource"] as CheckBox; if (targetCheckBox != null) { txtResult.Text = targetCheckBox.Text; } - 确保所有控件在同一窗体类中,事件方法能正常访问到目标控件(WinForms拖曳生成的控件默认是私有访问级别,同一类内可直接访问)
内容的提问来源于stack exchange,提问作者MattM83
相关产品推荐
相关产品推荐

