主题:有个疑问,这里的隐式转换,不同类型也可以的吗?
protected void messageCreated(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
DataRowView thisRow = (DataRowView)e.Item.DataItem;
if (thisRow!=null){
Label name = (Label)e.Item.FindControl("name");
if (name!=null){
name.Text=book.htmlEncode(Convert.ToString(thisRow["name"]));
}
上面代码中有两个地方有隐性转换。
DataRowView thisRow = (DataRowView)e.Item.DataItem;和
Label name = (Label)e.Item.FindControl("name");
e.item.dataitem是什么类型的呢?怎么可以转为DATAROWVIEW呢?
还有,e.item.findcontrol("name")是什么类型呢?怎么可以转为LABEL控件呢?
{
if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
DataRowView thisRow = (DataRowView)e.Item.DataItem;
if (thisRow!=null){
Label name = (Label)e.Item.FindControl("name");
if (name!=null){
name.Text=book.htmlEncode(Convert.ToString(thisRow["name"]));
}
上面代码中有两个地方有隐性转换。
DataRowView thisRow = (DataRowView)e.Item.DataItem;和
Label name = (Label)e.Item.FindControl("name");
e.item.dataitem是什么类型的呢?怎么可以转为DATAROWVIEW呢?
还有,e.item.findcontrol("name")是什么类型呢?怎么可以转为LABEL控件呢?