Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.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# 获取使用ButtonField的列的值_C#_Asp.net_Gridview - Fatal编程技术网

C# 获取使用ButtonField的列的值

C# 获取使用ButtonField的列的值,c#,asp.net,gridview,C#,Asp.net,Gridview,我有一个GridView,其中一列有一个TemplateField,使用LinkButton(ButtonField) 我可以很好地得到网格中特定单元格的值。使用: GridViewRow row = GridView1.SelectedRow; lblSalesmanCustomers.Text = row.Cells[2].Text; 然后在标签中显示该单元格中的文本 但是,我无法将其与按钮字段模板一起使用。它仅适用于非模板列 如何获取使用按钮字段/模板字段的列中特定单元格的值 编辑:这

我有一个
GridView
,其中一列有一个
TemplateField
,使用
LinkButton
ButtonField
) 我可以很好地得到网格中特定单元格的值。使用:

GridViewRow row = GridView1.SelectedRow;

lblSalesmanCustomers.Text = row.Cells[2].Text;
然后在
标签中显示该单元格中的文本

但是,我无法将其与
按钮字段
模板一起使用。它仅适用于非模板列

如何获取使用
按钮字段
/
模板字段
的列中特定单元格的值

编辑:这是我的GridView中的按钮字段代码:

此外,在该事件中也发生了这种情况:

protected void gvManagerCustomers_SelectedIndexChanged(object sender, EventArgs e)

单元格中将有一个控件集合-您可以在那里访问它

虽然更简单的方法是使用以下内容:

Label l = row.FindControl("myControlId");
EDIT:true上面的确切方法不起作用-但您可以使用控件,下面的方法确实起作用,请注意,我们在这里所做的几乎充斥着不好的做法(但毕竟,为了方便起见,我们使用了GridView)

为了解决这个问题,在handler方法中设置一个调试环境和断点,然后向下钻取类层次结构。调试器是我们的朋友;)


编辑只需提及显而易见的一点-该列在这里是硬编码的-您可能需要更改它。

单元格中将有一个控件集合-您可以在那里访问它

虽然更简单的方法是使用以下内容:

Label l = row.FindControl("myControlId");
EDIT:true上面的确切方法不起作用-但您可以使用控件,下面的方法确实起作用,请注意,我们在这里所做的几乎充斥着不好的做法(但毕竟,为了方便起见,我们使用了GridView)

为了解决这个问题,在handler方法中设置一个调试环境和断点,然后向下钻取类层次结构。调试器是我们的朋友;)


编辑只需提及显而易见的一点-该列在此处是硬编码的-您可能需要更改它。

我知道hyperlinkfield和buttonfield存在问题,但有一个解决方法。假设您正在基于一个名为ButtonNames的列绑定buttonfield文本,并且在该列中有您的所有名称,例如“button bob”、“button jerry”等。在GridView中,添加一个不可见列作为第一列,并将其值绑定为ButtonNames。通过设置一个可见性属性,可以使其不可见。忘了我脑子里想的是什么。然后,当您想要获取buttonfield的文本时,只需从该不可见列获取数据,这一点同样适用于超链接字段

编辑:这里有一些代码

<asp:BoundColumn ItemStyle-HorizontalAlign="Left" DataField="ButtonNames" SortExpression="ButtonNames" HeaderText="TriageId" Visible="false" ReadOnly="true"></asp:BoundColumn>


然后通过字符串s=e.Item.Cells[0]检索它。其中e是DataGridCommandEventArgs或类似性质的文本。

我知道hyperlinkfield和buttonfield存在问题,但需要解决。假设您正在基于一个名为ButtonNames的列绑定buttonfield文本,并且在该列中有您的所有名称,例如“button bob”、“button jerry”等。在GridView中,添加一个不可见列作为第一列,并将其值绑定为ButtonNames。通过设置一个可见性属性,可以使其不可见。忘了我脑子里想的是什么。然后,当您想要获取buttonfield的文本时,只需从该不可见列获取数据,这一点同样适用于超链接字段

编辑:这里有一些代码

<asp:BoundColumn ItemStyle-HorizontalAlign="Left" DataField="ButtonNames" SortExpression="ButtonNames" HeaderText="TriageId" Visible="false" ReadOnly="true"></asp:BoundColumn>


然后通过字符串s=e.Item.Cells[0]检索它。其中e是DataGridCommandEventArgs或类似性质的文本。

查看是否
var Button=row.Cells[“Customer”]。控件[0]
将检索您需要的按钮


您可能需要将其转换为正确的类型。

请查看
var Button=row.Cells[“Customer”]。控件[0]
将检索您需要的按钮


您可能需要将其转换为正确的类型。

您能提供您的GridView aspx代码吗?网站上有26个问题,您应该知道如何在帖子中设置代码的格式。(还有,不太明显的是,不要在末尾加上签名。)我还不确定如何格式化我的代码。不熟悉标记。如果我把我的名字放在任何东西的末尾,你会在意什么?如果你提供你在ButtonField/TemplateField中使用的标记,它会让你更好地了解任何潜在的解决方案。另外,您何时尝试从该单元格中检索文本-单击按钮?页面加载等@骰子。谢谢请查看上面编辑的文章,并附上代码。你能提供你的GridView aspx代码吗?网站上有26个问题,你应该知道如何在文章中设置代码的格式。(还有,不太明显的是,不要在末尾加上签名。)我还不确定如何格式化我的代码。不熟悉标记。如果我把我的名字放在任何东西的末尾,你会在意什么?如果你提供你在ButtonField/TemplateField中使用的标记,它会让你更好地了解任何潜在的解决方案。另外,您何时尝试从该单元格中检索文本-单击按钮?页面加载等@骰子。谢谢请看上面编辑过的文章和代码。我尝试过这种方法。但是由于某些原因,不允许或不支持在Datagridview中为控件提供ID。但是由于某些原因,不允许或不支持在Datagridview中为控件提供ID。这不起作用。我不得不采纳莱昂的建议。那一个让我得到了我想要的,这不管用。我不得不采纳莱昂的建议。那一个让我得到了我想要的。