Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.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# 是否在templateField标记内获取文本框值?_C#_Asp.net - Fatal编程技术网

C# 是否在templateField标记内获取文本框值?

C# 是否在templateField标记内获取文本框值?,c#,asp.net,C#,Asp.net,如何在templateField标记中获取textbox值 这是我的密码: <Fields> <asp:TemplateField > <ItemTemplate > <asp:TextBox ID="SUBJEK" runat="server" Width="600px" Text='<%# Bind("SUBJEK") %>' /> </ItemTemplate> </

如何在templateField标记中获取textbox值

这是我的密码:

 <Fields>
   <asp:TemplateField >
     <ItemTemplate >
     <asp:TextBox ID="SUBJEK" runat="server" Width="600px" Text='<%# Bind("SUBJEK") %>' />
     </ItemTemplate>
    </asp:TemplateField>
  </Fields>
但是,它不起作用。这将显示错误消息:

无法将类型“System.Web.UI.Control”转换为“JobList.TextBox”

FindControl方法返回一个控件数组,而不是单个控件,因此需要提及索引

FindControl方法返回一个控件数组,而不是单个控件,因此需要提及索引


您必须转到单元格以查找控件,提供行索引和列索引

int indexOfRowYouAreFinding = 0;
int indexOfColYouAreFinding = 2;

TextBox subjek = DV1.Rows[indexOfRowYouAreFinding].Cells[indexOfColYouAreFinding].FindControl("SUBJEK")[0] as TextBox;

您必须转到单元格以查找控件,提供行索引和列索引

int indexOfRowYouAreFinding = 0;
int indexOfColYouAreFinding = 2;

TextBox subjek = DV1.Rows[indexOfRowYouAreFinding].Cells[indexOfColYouAreFinding].FindControl("SUBJEK")[0] as TextBox;

“详细信息”视图中有多行,因此必须给出从中选择文本框值的行的索引。 TextBox t=TextBox DV1。行[0]。FindControlSubSeek


此代码将返回第一行值。

详细信息视图中有多行,因此您必须给出从中选择文本框值的行的索引。 TextBox t=TextBox DV1。行[0]。FindControlSubSeek


此代码将返回第一行值。

命名空间中还有一个名为TextBox的类

选中,JobList.TextBox不是asp.net文本框

这将有助于:

var subjek = (TextBox)DV1.FindControl("SUBJEK") as System.Web.UI.WebControls.Textbox;

您的命名空间中还有一个名为TextBox的类

选中,JobList.TextBox不是asp.net文本框

这将有助于:

var subjek = (TextBox)DV1.FindControl("SUBJEK") as System.Web.UI.WebControls.Textbox;


它仍然不起作用。。下面是错误消息,无法将带[]的索引应用于“System.Web.UI.Control”类型的表达式。有什么想法吗?它仍然不起作用。。此处是错误消息,无法将带[]的索引应用于类型为“System.Web.UI.Control”的表达式有何想法?DV1是detailsView控件的ID。。。知道吗?DV1是detailsView控件的ID。。。有什么想法吗?还是没用。。下面是错误消息,无法将[]索引应用于“System.Web.UI.Control”类型的表达式…将不起作用,您有自己的名为TextBox的类。看看我的回答是否有帮助。它仍然不起作用。。下面是错误消息,无法将[]索引应用于“System.Web.UI.Control”类型的表达式…将不起作用,您有自己的名为TextBox的类。看看我的回答是否有帮助。。无法将类型“System.Web.UI.Control”转换为“JobList.TextBox”我认为问题在于对TextBox的强制转换方法…这是强制转换TextBox的唯一方法吗?请将完整的代码与详细信息视图一起发布,以便我们更好地理解idnt工作。。无法将类型“System.Web.UI.Control”转换为“JobList.TextBox”我认为问题在于对TextBox的强制转换方法…这是强制转换TextBox的唯一方法吗?请将完整的代码与详细信息视图一起发布,以便我们更好地理解,我计算了这一点。当两个类具有相同的名称时,您可以使用名称空间来区分。嘿,,,这很有效!谢谢@nunespascal。。。这是我的最终代码:System.Web.UI.WebControls.TextBox subject=System.Web.UI.WebControls.TextBoxDV1.findcontrolsubject作为System.Web.UI.WebControls.TextBox;但是我不知道它为什么工作?你能告诉我吗?如果两个类有相同的名称,.net不知道只使用类名使用哪个类。当您使用其他DLL时,这种情况会经常发生,这就是为什么我们有名称空间。您确实应该阅读有关名称空间、程序集和完整限定名的内容。谷歌应该让你开始。这应该让你开始:好的…谢谢老兄。。但是你能指出我的错误在哪里吗?是的,我知道了。当两个类具有相同的名称时,您可以使用名称空间来区分。嘿,,,这很有效!谢谢@nunespascal。。。这是我的最终代码:System.Web.UI.WebControls.TextBox subject=System.Web.UI.WebControls.TextBoxDV1.findcontrolsubject作为System.Web.UI.WebControls.TextBox;但是我不知道它为什么工作?你能告诉我吗?如果两个类有相同的名称,.net不知道只使用类名使用哪个类。当您使用其他DLL时,这种情况会经常发生,这就是为什么我们有名称空间。您确实应该阅读有关名称空间、程序集和完整限定名的内容。谷歌应该让你开始。这应该让你开始:好的…谢谢老兄。。但是你能指出我的错误在哪里吗?