如何动态更改TemplateField的值?

时间:2010-11-10 21:31:29

标签: asp.net gridview templatefield

我有一个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文本的正确方法是什么?

1 个答案:

答案 0 :(得分:1)

尝试将TextBox控件添加到模板中,然后更改 it 而不是单元格内容。你应该可以通过以下方式获得它:

TextBox tb = GridView.SelectedRow.Cells[0].Controls[0] as TextBox;
if(tb != null)
   tb.Text = newValue;