
无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型……
用GridView时,有用“编辑”,点“更新”后出现错误:无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.We...
用GridView时,有用“编辑”,点“更新”后出现错误:
无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.DropDownList”。
在后台未用Literal <asp:TemplateField HeaderText="模板">
<EditItemTemplate> <asp:DropDownList ID="Ddl_Template" runat="server" AppendDataBoundItems="True"Enabled="True">
<asp:ListItem Value="0">通用</asp:ListItem></asp:DropDownList> </EditItemTemplate>
<ItemTemplate> <asp:DropDownList ID="Ddl_Template" runat="server" AppendDataBoundItems="True" Enabled="False"> <asp:ListItem Value="0">通用</asp:ListItem> </asp:DropDownList> </ItemTemplate></asp:TemplateField>
string id = Gvw_List.DataKeys[e.RowIndex]["id"].ToString(); string classname = ((TextBox)Gvw_List.Rows[e.RowIndex].Cells[1].Controls[0]).Text; string templateid = ((DropDownList)Gvw_List.Rows[e.RowIndex].Cells[2].Controls[0]).SelectedValue; string strSQL = "update nts_infoclass set classname='" + classname + "',templateid="+templateid+" where id=" + id;
DataClass.ExecCommand(strSQL); Gvw_List.EditIndex = -1; 展开
无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.DropDownList”。
在后台未用Literal <asp:TemplateField HeaderText="模板">
<EditItemTemplate> <asp:DropDownList ID="Ddl_Template" runat="server" AppendDataBoundItems="True"Enabled="True">
<asp:ListItem Value="0">通用</asp:ListItem></asp:DropDownList> </EditItemTemplate>
<ItemTemplate> <asp:DropDownList ID="Ddl_Template" runat="server" AppendDataBoundItems="True" Enabled="False"> <asp:ListItem Value="0">通用</asp:ListItem> </asp:DropDownList> </ItemTemplate></asp:TemplateField>
string id = Gvw_List.DataKeys[e.RowIndex]["id"].ToString(); string classname = ((TextBox)Gvw_List.Rows[e.RowIndex].Cells[1].Controls[0]).Text; string templateid = ((DropDownList)Gvw_List.Rows[e.RowIndex].Cells[2].Controls[0]).SelectedValue; string strSQL = "update nts_infoclass set classname='" + classname + "',templateid="+templateid+" where id=" + id;
DataClass.ExecCommand(strSQL); Gvw_List.EditIndex = -1; 展开
展开全部
同意楼上的说法,肯定在后台“编辑“的响应事件中,添加了类似FindControl的方法,但是在类型转换的时候,强制转换的类型和原有的类型不符!
具体的说,就是你讲System.Web.UI.LiteralControl转换成System.Web.UI.WebControls.DropDownList了!
具体的说,就是你讲System.Web.UI.LiteralControl转换成System.Web.UI.WebControls.DropDownList了!
展开全部
string templateid = ((DropDownList)Gvw_List.Rows[e.RowIndex].Cells[2].Controls[0]).SelectedValue;
这句,
改成:
string templateid = ((DropDownList)Gvw_List.Rows[e.RowIndex].Cells[2].FindControl("Ddl_Template")).SelectedValue;
——————————————————
你是否在后台代码里用了FindControl?看下类型强制转换是否一致。
这句,
改成:
string templateid = ((DropDownList)Gvw_List.Rows[e.RowIndex].Cells[2].FindControl("Ddl_Template")).SelectedValue;
——————————————————
你是否在后台代码里用了FindControl?看下类型强制转换是否一致。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询