Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法使用FindControl进行更新_C#_Asp.net - Fatal编程技术网

C# 无法使用FindControl进行更新

C# 无法使用FindControl进行更新,c#,asp.net,C#,Asp.net,我在我的listview车的EditItemTemplate中有一个文本框: <EditItemTemplate> <asp:TextBox ID="txt1" runat="server" Text='<%# Bind("photo1") %>' Visibile="true"> </asp:TextBox> </EditItemTemplate> 现在我已经调试了它,并且从我的数据库中显示的值是正确的,然后当我使用txt1

我在我的listview车的EditItemTemplate中有一个文本框:

<EditItemTemplate>
  <asp:TextBox ID="txt1" runat="server" Text='<%# Bind("photo1") %>' Visibile="true">
  </asp:TextBox>
</EditItemTemplate>
现在我已经调试了它,并且从我的数据库中显示的值是正确的,然后当我使用txt1.Text=newImage从代码中设置它时;它显示它已经在自动的文本框中更新了文本框,但是它在数据库中没有更新,但奇怪的是,当我在文本框中键入并单击编辑按钮时,它会更新,但在代码中设置字符串时不会更新


有人知道我做错了什么吗?

在listview\u car\u ItemUpdate中,首先更新数据库,然后调用首次加载页面时用于将控件绑定到数据库的任何方法。这将从数据库中检索photo1的新值,并将其绑定到txt1。

调用ItemUpdate时,所有值都已在NewValues集合中收集。要修改任何值,应修改e.NewValues

protected void listview_car_ItemUpdating(object sender, ListViewUpdateEventArgs e)
{
    e.NewValues["key"] = "newImage";
}

其中key是键的名称,而不是控件的名称,控件的名称通常是列名。您也可以使用索引0,1,2…

是否有EditItemTemplate所属的完整代码?数据源是什么?您的目标是使最终用户能够在文本框中键入内容,并让asp.net在单击“更新”按钮时使用其条目更新数据库吗?@LonProsser No,当用户上传图像时,它将在文本框中设置图像文件名,然后将文件名上传到DB@Piyush基本上,设置txt1.Text=newImage不会更新数据库,但当我像用户那样通过文本框编辑文本时,它会更新,但不会使用txt1.Text=newImage@Piyush可以因此,我有一个文本框,它的Text属性检索数据库中的photo1列,并将其存储在textbox.Text属性中。。现在在ItemUpdate事件中,我想将Text属性更改为newImage并更新数据库,但它不起作用。但是,如果我手动进入文本框,键入newImage并单击update,它将更新!我在EditItemTemplate中绑定的原因是,我根本不接触数据库,我想使用CommandName=EditName来完成这项工作,但这会更新列,我现在想将字符串存储在文本框中,这样我就可以执行IF语句来检查我需要的内容,例如iftextbox.Text=defaultcar.jpg
protected void listview_car_ItemUpdating(object sender, ListViewUpdateEventArgs e)
{
    e.NewValues["key"] = "newImage";
}