我正在处理一项任务,它让我填充一个窗口(动态),并提供供用户选择的选项。我正在尝试命名Checkbox
,我在运行时遇到错误:
'cbPS_Steel, Carbon - Schedule 40' is not a valid value for property 'Name'.
Name
属性采用string
值,但它没有将我传递给属性的值,即使它们是字符串。这可能是因为连字符或空格?
Name
的{{1}}属性是否被视为无效?任何信息或文章都会有所帮助。谢谢!
Checkbox
答案 0 :(得分:3)
documentation on the FrameworkElement.Name
property中对此进行了描述。它说:
用于Name的字符串值具有一些限制,这是由XAML规范定义的基础x:Name指令强加的。最值得注意的是,名称必须以字母或下划线字符(_)开头,并且必须仅包含字母,数字或下划线。有关更多信息,请参阅WPF XAML Namescopes。
话虽如此,它可能是子类Checkbox
的一个更清晰的解决方案,并添加一个属性,可以帮助您将复选框分别指向该子类。
答案 1 :(得分:2)
Name
属性允许您从后面的代码引用控件(例如在Xaml
中使用时),因此它必须与变量名称具有相同的限制
变量名不能包含连字符和空格:)
编辑:查看评论,Name
属性的限制较少。谢谢 @ O.R.Mapper