我有一个GridView,我想在选中时刷新一行(不是整个网格)。当Grid选择索引更改时,我尝试更改每个Text
的{{1}}属性。它似乎适用于GridView.SelectedRow.Cells
,但不适用于DataField
。对于TemplateField
我得到了奇怪的结果 - 所选行的值正确更改,但是当我选择另一行时,先前选定行的TemplateField
值变为空白。简要说明:
TemplateField
最终,除了选中之外,我最终会为每条记录留空1. Nothing selected
--------------------------
id template_field
--------------------------
1 value_1
2 value_2
2. First record selected
--------------------------
id template_field
--------------------------
1 updated_value_1
2 value_2
3. Second record selected
--------------------------
id template_field
--------------------------
1 [blank!]
2 updated_value_2
。更改TemplateField文本的正确方法是什么?
答案 0 :(得分:1)
尝试将TextBox控件添加到模板中,然后更改 it 而不是单元格内容。你应该可以通过以下方式获得它:
TextBox tb = GridView.SelectedRow.Cells[0].Controls[0] as TextBox;
if(tb != null)
tb.Text = newValue;