本文介绍了发生错误 - “无法将类型为'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'。”的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-01 21:44