我正在用C#开发一个winForm应用程序,我遇到过一直困扰我的事情。
在向用户显示数据时使用Label或TextBox更好吗?
像姓名,电话号码等等。我的直觉说使用TextBox并将其设置为只读,直到我需要允许从该特定位置进行编辑。为未来做好计划。
作为一名年轻的 Lone Wolf 开发者,我非常感谢这里的任何见解。是否有任何专业人士和骗子?还有其他我没想到的东西吗?
答案 0 :(得分:11)
要考虑的一个有用的事情是文本框中的文本是可选的,因此用户可以更轻松地复制/粘贴内容。
过早优化,比如使用标签,因为它们的重量更轻,应该放在防御性编程的后座,正如您所怀疑的那样,可以节省您将来的时间。
答案 1 :(得分:6)
您可能需要允许用户复制文本...这是我使用文本框然后使其看起来像标签(只读和透明背景,没有边框)的唯一原因。
实际上,Windows中的“属性”对话框使用文本框来允许您复制文本。
注意我说“ReadOnly”......不是“禁用”。
答案 2 :(得分:5)
对于用户可以编辑的数据(无论是否在当前上下文中启用),我总是使用我根据需要启用/禁用的文本框。对于纯信息的数据,即在当前上下文中不会给用户更改它,那就是我使用标签的地方。
答案 3 :(得分:4)
指示值是动态的是关键。通常,文本框使这很容易识别,这就是使用它的原因。如果你能用标签做到这一点,那将是首选。
答案 4 :(得分:3)
对于静态文本,我总是使用标签 - 如果我不需要它,为什么要使用较重的控件?
答案 5 :(得分:3)
标签是要走的路。
未启用文本框的问题是用户希望有一些方法可以启用它。如果他们找不到允许编辑的地方,那么他们认为该软件有问题。
答案 6 :(得分:2)
除非需要编辑数据,否则请使用标签。你真的应该使用最适合所显示信息的任何标签。
答案 7 :(得分:2)
有时,您的用户可能希望能够突出显示和复制静态文本(地址,电话号码等)。据我所知,标签无法突出显示,而只读文本框可以。
答案 8 :(得分:2)
我认为这是一个你需要不再是程序员并开始成为用户的地方。把事情看作是系统的用户,而不是开发人员。看看哪一个让您感觉更舒服。如果有必要(也可能),请询问那些不参与开发过程并且不太了解编程技术的人。
答案 9 :(得分:1)
我同意d03boy。 Textbox推断该值是可编辑的。标签推断仅显示形式。这是一项更多的工作。恕我直言,您希望您的应用程序与其他基于Windows的应用程序相匹配,以使您的应用程序感觉尽可能专业。
我会按照查看/编辑表单显示模型。