我該如何在網格視圖的行命令中找到控件?如何在網格視圖的行命令中找到控件?
3
A
回答
17
實際上存在GridViewCommandEventArgs沒有行,所以你需要從命令源獲取該行命名容器
GridViewRow row = (GridViewRow)(((Control)e.CommandSource).NamingContainer);
,那麼你將能夠使用
TextBox myTextBox = row.FindControl("MyTextBoxId") as TextBox;
希望這有助於!
0
如果妳想要找到在命令行使用控制
controlname controlId=(controlname)e.FindControl("controlId");
例如如果u想找到一個拉布勒 ID爲LBL然後用..
Label lbl = (Label)e.Row.FindControl("lbl");
1
GridViewRow row = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer);
Label lblProdId = (Label)row.FindControl(「lblproductId」);
0
您可以使用「CommandName」在控件中使用「CommandArgument」。 這2個參數:
<asp:LinkButton ID="UpdateButton" runat="server" CommandName="Update" CommandArgument='<%# Container.DataItemIndex + ";" + Eval("idinterlocuteur") %>'>
然後在後面的代碼,你可以得到的參數:
string[] arg = e.CommandArgument.ToString().Split(';');
int index = Convert.ToInt16(arg[0]);
string idinterlocuteur = arg[1];
現在你的論點找到你的控件:
CheckBox Check1 = GridView1.Rows[index].FindControl("MyCheckboxinrow") as CheckBox;
0
如果您使用的用戶控件在你的gridview itemtemplate中,然後((Control)e.CommandSource).NamingContainer
可能不會返回你的gridviewrow。
在這種情況下,我用下面的代碼獲取當前行:
var c = ((Control) e.CommandSource).NamingContainer;
while (c.GetType() != typeof(GridViewRow))
{
c = c.Parent;
}
var currentRow = (GridViewRow) c;
這不是很漂亮,但它的工作原理。
2
如果使用的LinkButton
LinkButton ctrl = e.CommandSource as LinkButton;
if (ctrl != null)
{
GridViewRow row = ctrl.Parent.NamingContainer as GridViewRow;
TextBox txtDescription = (TextBox)row.FindControl("txtDescription");
}
0
<asp:TemplateField HeaderText="Next Date To Attend" ItemStyle-CssClass="col-md-2" >
<EditItemTemplate>
<asp:TextBox ID="NextAttendTextBox" CssClass="col-sm-12" runat="server"></asp:TextBox>
<span class="text-muted">DD-MM-YYYY</span>
</EditItemTemplate>
<ItemTemplate>
<%#Eval("NextAttend") %>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Update Status" ItemStyle-CssClass="col-md-1" >
<EditItemTemplate>
<div class="btn-group">
<asp:LinkButton ID="LinkButton31" class="btn btn-sm btn-success" CommandArgument='<%#Container.DataItemIndex %>' CommandName="UpdateStat" runat="server" >
<i class="ace-icon fa fa-save"></i></asp:LinkButton>
<asp:LinkButton ID="LinkButton32" class="btn btn-sm btn-error" CommandName="Cancel" runat="server" >
<i class="ace-icon fa fa-close"></i></asp:LinkButton>
</div>
</EditItemTemplate>
<ItemTemplate>
<div class="btn-group">
<asp:LinkButton ID="LinkButton3" class="btn btn-sm btn-warning" CommandName="Edit" runat="server" >
<i class="ace-icon fa fa-upload"></i></asp:LinkButton>
</div>
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
</asp:TemplateField>
if (e.CommandName == "UpdateStat")
{
HiddenField IDHiddenField=(HiddenField)GridView1.Rows[Convert.ToInt32(e.CommandArgument)].FindControl("IDHiddenField");
TextBox CurrentStatDesTextBox=(TextBox)GridView1.Rows[Convert.ToInt32(e.CommandArgument)].FindControl("CurrentStatDesTextBox");}
+1
請提供您的代碼的一些信息/細節 – jhhoff02
0
GridViewRow GVR =(GridViewRow)((對照)e.CommandSource).NamingContainer; int rowIndex = gvr.RowIndex;
string Cat_name = (GridView1.Rows[rowIndex].FindControl("TxtName") as TextBox).Text;
0
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
GridViewRow gvr = (GridViewRow)((Control)e.CommandSource).NamingContainer;
int rowIndex = gvr.RowIndex;
string Cat_name = (GridView1.Rows[rowIndex].FindControl("TxtName") as TextBox).Text;
}
相關問題
- 1. 在網格視圖中找到控件
- 2. 在網格視圖中查找控件?
- 3. 在asp.net中的網格視圖行命令?
- 4. 如何將網格手勢鏈接到視圖模型命令?
- 5. 網格視圖行命令事件不工作
- 6. 網格視圖行命令事件後返回
- 7. 如何將網格視圖中的行拖放到網格視圖
- 8. asp.net中的網格視圖控件
- 9. 網格視圖中的用戶控件
- 10. 如何給網格排一行命令
- 11. 如何將滾動動畫應用到網格視圖控件
- 12. 如何在網格視圖中使用網格視圖?
- 13. 無法在zsh中運行任何命令:「找不到命令」
- 14. 如何將中繼器控件轉換爲Asp.Net中的網格視圖控件?
- 15. 在命令行中運行ActiveX控件?
- 16. 如何在網格內找到文本框的控件
- 17. 命令在命令行中找到但在腳本中找不到
- 18. 如何在網格視圖控件中選擇特定的單元格值?
- 19. 使用Datasource控件的網格視圖
- 20. 如何在Android中添加行分隔符到網格視圖?
- 21. 如何在django視圖中運行命令行python腳本?
- 22. 爲什麼我不能得到e.RowIndex行編輯命令的網格視圖
- 23. 如何在網格視圖
- 24. 如何在網格視圖
- 25. 如何在網格視圖
- 26. 運行命令行:找不到文件
- 27. 將控件動態綁定到asp.net中的網格視圖
- 28. 在命令中運行視圖
- 29. 如何在MacOs上的終端中找到執行的命令
- 30. 何添加控件到html5視頻? (如何在後臺HTML命令視頻)
Control is undefined? –