【发布时间】:2011-09-16 08:23:28
【问题描述】:
我目前正在使用一个 ASPxGridView 控件的 aspx 网站。我能够以我希望的方式在我的 GridView 上显示数据。但是,当我单击“编辑”按钮(由控件本身在命令列下提供)时,会出现我的问题。单击所述按钮后,GridView 会将行更改为可编辑行。但是,我无法更改文本框中的值。请注意,我已经在 GridView 的智能标记和 xml 源本身上将 ReadOnly 属性设置为 false。
我尝试创建一个测试标志,其中只要 ReadOnly 属性设置为 true,文本框的背景色就会变为蓝色。运行程序后,无论 ReadOnly 设置为 true 还是 false,文本框都会显示为蓝色。
是否有任何其他属性可以帮助我使这些文本框可编辑?非常感谢!
干杯!
【问题讨论】:
-
当您说“但是,我无法更改文本框中的值”时,您的意思是您无法在单元格中输入内容?
-
是的。我无法在单元格中输入。例如,当单元格内的原始值为“1000”时,单击编辑按钮时,它将显示在“1000”内具有相同值的文本框版本。我无法编辑它。我不能打字也不能改变它。感谢您的回复。
-
你设置了 KeyFieldName 网格的属性吗?如果您使用数据源控件,还要检查您是否处理了 RowUpdating 之类的事件或有 UpdateCommand。
-
是的,我设置了 KeyFieldName 属性。我还能够处理可以通过断点测试的 RowUpdating。我唯一的问题是,即使我的所有 ReadOnly 属性都已设置为 false,我也无法编辑文本框中的内容。
-
您的网格是绑定到实体还是数据集?如果该字段对应于数据源中的只读字段,则它可能变为只读。无论如何,您可以尝试在“CellEditorInitialize”事件中为该列设置“e.Editor.Readonly = False”,看看是否有效?
标签: c# asp.net aspxgridview