C# 在GroupBox和TreeView中显示带符号和的字符串

C# 在GroupBox和TreeView中显示带符号和的字符串,c#,winforms,C#,Winforms,我有这样的代码(简化问题): 使用此代码,GroupBox显示为“this-That”,而TreeView正确显示为“this&That” 因此,我将字符串()更改为: public const string THIS_AND_THAT = "This && That"; 在这种情况下,GroupBox正确显示为“this&That”,而TreeView显示为“this&That”。 我看不出我可以在GroupBox或TreeView上使用属性 我该怎么办?(将我的评论提升为答

我有这样的代码(简化问题):

使用此代码,
GroupBox
显示为“this-That”,而
TreeView
正确显示为“this&That”

因此,我将字符串()更改为:

public const string THIS_AND_THAT = "This && That";
在这种情况下,
GroupBox
正确显示为“this&That”,而
TreeView
显示为“this&That”。 我看不出我可以在GroupBox或TreeView上使用属性

我该怎么办?

(将我的评论提升为答案):

Windows和WinForms中的不同控件处理显示给用户的字符串的方式不一致,正如您所发现的
TreeView
不支持转义符号,而
GroupBox
支持转义符号

幸运的是,提供适当的文本非常简单:

String text = "This && that";

myGroupBox.Text = text;
myTreeNode.Text = text.Replace("&&", "&");

不能对TreeView和GroupBox使用相同的字符串,您需要为某些控件提供转义版本,为其他控件提供未转义版本。正确,因此您可以将其作为答案。避免
public const String Foo
仅将
const
值公开为
内部
。对于公开的值,应该使用
公共静态字符串Foo{get;}=“Value”公共静态只读字符串
String text = "This && that";

myGroupBox.Text = text;
myTreeNode.Text = text.Replace("&&", "&");