我有这个错误,不知道什么是错误。
“无法将类型'字符串'转换为 'System.Web.UI.HtmlControls.HtmlSelect'通过引用转换, 装箱转换,拆箱转换,换行或转换 类型转换“
导致上述错误的代码如下:
protected void RptFaqsAnswer_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
...
(e.Item.FindControl("myselect").ClientID as HtmlSelect).Items[0].Attributes.Add("display", "none");
...
}
在.aspx页面中,我将此选择标记作为“转发器”的子项。
<asp:Repeater ID="rptFaqsAnswer" runat="server" OnItemDataBound="RptFaqsAnswer_ItemDataBound">
<select runat="server" id="myselect">
<option value="c1">Choice 1</option>
...
</select>
</asp:Repeater>
这个错误的原因似乎是什么。
由于
RJ
答案 0 :(得分:1)
试试这个
e.Item.FindControl("myselect") as HtmlSelect
而不是
e.Item.FindControl("myselect").ClientID as HtmlSelect
这是您尝试转换的ClientID
,这就是您收到错误的原因