--麻烦看下面的代码--
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load()
{
foreach (LiteralControl litControl in Page.Controls)
litControl.Text = strReverse(litControl.Text);
}
string strReverse(string strText)
{
string strResult = "";
foreach (char letter in strText)
strResult = letter + strResult;
return strResult;
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Literal</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<b>The text is reversed</b>
</div>
</form>
</body>
</html>
------------------------------------
上面是我照<<asp.net unleashed>>打的例子,编译时提示:
无法将类型为“System.Web.UI.HtmlControls.HtmlHead”的对象强制转换为类型“System.Web.UI.LiteralControl”。
问题点数:20、回复次数:3Top
1 楼astra1(Hyperion)回复于 2006-03-08 23:40:09 得分 15
foreach (Control litControl in Page.Controls)
if(litControl.GetType().ToString()=="System.Web.UI.LiteralControl")
((LiteralControl)litControl).Text = strReverse(((LiteralControl)litControl).Text);
要判断后才能转换Top
2 楼ksnoopy(snoopy)回复于 2006-03-09 13:53:24 得分 0
还是出现一样的错误Top
3 楼loveaspdnet(我爱.net)回复于 2006-03-09 14:25:28 得分 5
二楼的代码应该可以解决问题,注意第一行代码改成了foreach (Control litControl in Page.Controls)。Top




