你如何处理Winforms中的临时无用控件(隐藏与禁用)?

Bra*_*ann 5 usability user-interface winforms

有一个带有复选框的表单很常见,表示"使用foo"后面紧跟一个文本框,用户可以在其中输入他想要使用的"foo值".当然,只有选中"使用foo"时,此文本框才有用

我不知道处理这种情况的最佳方法:

  1. 禁用文本框(即textboxfoo.Enabled = false;)
  2. 隐藏它(即textboxfoo.Visible = false;)
  3. 让用户输入foo值,如果他愿意,并忽略他输入的值.

我可以遵循最佳做法吗?

Jef*_*dge 12

应禁用文本框.

如果文本框被隐藏,那么表单的可见更改将使程序不那么用户友好.这方面的一个例子是过去在Microsoft Office中的旧的(非常不受欢迎的)消失的菜单项.人们不希望屏幕上的东西四处移动.这令人迷惑.

如果允许用户输入无用的值,则会给出错误的印象,即输入该值会产生一些影响.