65.9K
CodeProject 正在变化。 阅读更多。
Home

使 CheckBox 只读

starIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIconemptyStarIcon

1.67/5 (2投票s)

2012年7月9日

CPOL

1分钟阅读

viewsIcon

47364

这是“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
© . All rights reserved.