本文介绍了发生错误 - “无法将类型为'System.Web.UI.WebControls.ContentPlaceHolder'的对象强制转换为'System.Web.UI.WebControls.GridViewRow'。”的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
<div>
<asp:HiddenField ID="hdnfCreatedBy" runat="server" />
<asp:ImageButton ID="imgBtn" ImageUrl="~/Images/edit1.jpg" runat="server" Width="25" Height="25" onclick="imgBtn_Click" />
<asp:GridView ID="gvDetails" runat="server" AutoGenerateColumns="false" Width="600px">
<columns>
<asp:TemplateField HeaderText="Sr. No.">
<itemtemplate>
<%#Container.DataItemIndex+1 %>
</itemtemplate>
<asp:TemplateField HeaderText="ID">
<itemtemplate>
<asp:Label ID="lblID" runat="server" Text='<%#Eval("ID") %>'>
</itemtemplate>
<HeaderStyle CssClass="hideCol" />
<itemstyle cssclass="hideCol" />
<asp:TemplateField HeaderText="Name">
<itemtemplate>
<asp:Label ID="lblName" runat="server" Text='<%#Eval("Name") %>'>
</itemtemplate>
<asp:TemplateField HeaderText="Date Of Birth">
<itemtemplate>
<asp:Label ID="lblDOB" runat="server" Text='<%#Eval("DOB") %>'>
</itemtemplate>
<asp:TemplateField HeaderText="Age">
<itemtemplate>
<asp:Label ID="lblAge" runat="server" Text='<%#Eval("Age") %>'>
</itemtemplate>
<asp:TemplateField HeaderText="Gender">
<itemtemplate>
<asp:Label ID="lblGender" runat="server" Text='<%#Eval("Gender") %>'>
</itemtemplate>
<asp:TemplateField HeaderText="View">
<itemtemplate>
<a href="viewDetails.aspx?ID=<%#Eval(" id=") %>">
<img src="../../images/view1.jpg" alt="view" title="View" style="border: none" width="35px"
height="25px" />
</a>
<asp:HyperLink ID="hplnkBtnViewDetails" runat="server" Target="_parent" NavigateUrl='<%#"viewDetails.aspx?ID=" + Eval("ID") %>'>
<%--<asp:HyperLink ID="HyperLink1" runat="server" Text="View" Target="_blank" NavigateUrl='<%# "AllotmentGroupAView.aspx?App_Id=" + Eval("ApplicationId")%>'>
--%>
<img src="../../images/view1.jpg" alt="view" title="View" style="border: none" width="35px"
height="25px" />
<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="hplnkBtnViewDetails"
PopupControlID="pnlViewDetails" DropShadow="true" OkControlID="btnUpdate">
</itemtemplate>
<asp:TemplateField HeaderText="Update">
<itemtemplate>
<asp:ImageButton ID="imgBtnUpdate" runat="server" ImageUrl="~/Images/edit1.jpg" Width="30px"
Height="25px" />
</itemtemplate>
</columns>
<HeaderStyle CssClass="gvHeader" />
<rowstyle cssclass="gvRow" />
<alternatingrowstyle cssclass="gvAltRow" />
<asp:Label ID="lblresult" runat="server" />
<asp:Button ID="btnShowPopup" runat="server" Style="display: none" />
<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="btnShowPopup"
PopupControlID="pnlpopup" CancelControlID="btnCancel">
<asp:Panel ID="pnlpopup" runat="server" BackColor="White" Height="269px" Width="400px"
Style="display: none">
<table width="100%" style="border: Solid 3px #D55500; width: 100%; height: 100%">
cellpadding="0" cellspacing="0">
<tr style="background-color: #D55500">
<td colspan="2" style="height: 10%; color: White; font-weight: bold; font-size: larger">
align="center">
User Details
</td>
</tr>
<tr>
<td align="right">
ID :
</td>
<td>
<asp:Label ID="lblID" runat="server">
</td>
</tr>
<tr>
<td align="right">
Name :
</td>
<td>
<asp:TextBox ID="txtName" runat="server">
</td>
</tr>
<tr>
<td align="right">
BOB :
</td>
<td>
<asp:TextBox ID="txtDOB" runat="server" />
</td>
</tr>
<tr>
<td align="right">
Age :
</td>
<td>
<asp:TextBox ID="txtAge" runat="server" />
</td>
</tr>
<tr>
<td align="right">
Gender :
</td>
<td>
<asp:DropdownList ID="ddlGender" runat="server" >
<asp:ListItem Value="0" Text="<<-- Select Gender -->>">
<asp:ListItem Value="1" Text="Female">
<asp:ListItem Value="2" Text="Male">
</td>
</tr>
<tr>
<td>
</td>
<td>
<asp:Button ID="btnUpdate" CommandName="Update" runat="server" Text="Update" OnClick="btnUpdate_Click"/>
<asp:Button ID="btnCancel" runat="server" Text="Cancel" />
</td>
</tr>
</table>
</div>
#region imgBtn_Click
protected void imgBtn_Click(object sender, ImageClickEventArgs e)
{
try
{
ImageButton btnDetails = sender as ImageButton;
GridViewRow gvRow = (GridViewRow)btnDetails.NamingContainer;
int sn = Convert.ToInt32(((TextBox)gvDetails.Rows[gvRow.RowIndex].Cells[0].Controls[0]).Text);
lblID.Text = gvDetails.DataKeys[gvRow.RowIndex].Value.ToString();
txtName.Text = gvRow.Cells[1].Text;
txtDOB.Text = gvRow.Cells[2].Text;
txtAge.Text = gvRow.Cells[3].Text;
ddlGender.SelectedItem.Text = gvRow.Cells[4].Text;
this.ModalPopupExtender1.Show();
}
catch (Exception ex)
{
throw ex;
}
}
#endregion
推荐答案
GridViewRow row = gvDetails.Rows[gvDetails.SelectedIndex];
这篇关于发生错误 - “无法将类型为'System.Web.UI.WebControls.ContentPlaceHolder'的对象强制转换为'System.Web.UI.WebControls.GridViewRow'。”的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!