使 CheckBox 只读






1.67/5 (2投票s)
这是“CheckBoxPanel - 一个自动启用/禁用相关控件的 C# 复选框”的替代方案。
引言
只读复选框是一个简单的用户控件,用于组合多个相关的控件。
背景
我一直致力于改进我的用户界面。一种常见的用户界面方法是将一个选项(例如:“保存到备份文件”)作为复选框呈现,并带有一些额外的相关设置(例如:包含写入的文件名的编辑框和一个“浏览”按钮)。大多数传统用户界面要么
- 在主选项禁用时,让设置保持可编辑状态(糟糕!),或者
- 禁用控件,只有在首先选中主选项时才启用它们。
让我们做得更好... 当控件被禁用时,为什么用户必须点击复选框才能使它们可编辑?如果他们点击子 TextBox,我们可以推断他们希望编辑它,这需要启用主选项;所以为什么不为他们节省时间并自动完成呢?
使用代码
文章代码包含使复选框只读的代码。
//
// On Check Changed event
//
if (checkBox.Checked == true || checkBox.Checked == false)
{
checkBox.CheckState = CheckState.Checked;
checkBox.CheckState = CheckState.Indeterminate;
//or
checkBox.CheckState = CheckState.Checked;
}
关注点
好的用户界面在于注重细节,简化用户工作流程,使应用程序的易用性和速度得到提升,并遵守直观的标准以避免混淆用户。即使像复选框这样的小功能也能真正改善用户体验。
自动化这种类型的 UI 增强还可以节省大量的程序员时间 - 您需要开发通用解决方案的初始成本,但随着时间的推移,您会发现自己重复使用相同的代码来节省每个应用程序的开发时间,从而获得回报。
历史
- 08-07-2012