我是Visual Studio 2010 C#的新手。我已经创建了一个表单。但是,当我运行应用程序时,发生了一个错误,指出"Cannot implicity convert type 'string' to 'System.Windows.Forms.ColumnHeader'"
。有人能告诉我发生了什么,我该如何解决这个问题?感谢。
答案 0 :(得分:66)
您似乎已在表单上创建了名为ColumnHeader
的{{1}},而该表单又隐藏了表单属性Name
,这是一个字符串...这是唯一的方案我可以想象从提供的屏幕截图中导致错误
如果我的假设是正确的,您可以通过将该行更改为this.Name
答案 1 :(得分:4)
您似乎已经创建了一个名为“Name”的ColumnHeader。 请检查您是否有任何名称为“名称”的控件。
Ex: - 我有一个DataGridView,列名为“SrNo”,“Name”,“Age”。 我得到了同样的错误。为什么bcoz的“名字”。
解决方案:将DataGridView的ColumnHeader“Name”重命名为其他人说“Person”或“Name”以外的任何东西。 但是如果要将“Name”显示为DataGridView的Header文本,可以将HeaderText保持为“Name”.i.e。
姓名:人
HeaderText:名称
DataPropertyName:Person
这里DataPropertyName是可选的。如果通过集合绑定为DataSource,则使用它。
答案 2 :(得分:3)
您确定不希望.Text
代替.Name
吗?