我不太明白下面这段代码中的Label classname=(Label)e.Item.FindControl("Label1");是什么意思,为什么e前面要有个(Label),还有就是参数e是代表什么呢,感觉好象很模糊啊??那位能帮小弟的忙.....public void MyDataGrid_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
MyDataGrid.EditItemIndex = e.Item.ItemIndex;
Label classname=(Label)e.Item.FindControl("Label1");
Session["oldclass"]= classname.Text.Trim();
ClassName.Text = classname.Text.Trim();
getClass();
}
{
MyDataGrid.EditItemIndex = e.Item.ItemIndex;
Label classname=(Label)e.Item.FindControl("Label1");
Session["oldclass"]= classname.Text.Trim();
ClassName.Text = classname.Text.Trim();
getClass();
}
解决方案 »
- 前几天又做了一个网站.请大家点评一下.谢谢
- 格式化Gridview 求教
- 想在ItemTemplate判断再显示图片,出错请指教
- |M| 如何禁用整个网页 我用Page.Enabled 但没有这个属性
- 关于字符串分割问题(遇到难题了,高手进)
- 请朋友们帮着报个价
- 有关<authentication mode="Forms">的问题。
- 奇怪的问题,我在首页上放了不少usercontrol 控件,全是数据显示,我设置了控件的缓存为180秒,可是为什么有时候在看首页的时候,这些控
- 求一个象百度和google或sina那样的一个在IE工具栏上搜索的工具条??请大侠们指点,如果有程序的本人可以购买?谢谢!!!!
- DataGrid 数据不能更新数据
- 求助一个ASP.NET2.0+JS的问题
- <%# %>表示帮顶那么<% %>表示什么意思呀?
你当然要转换啊
第一你需要什么类型的而=后面返回的又不是你想要的类型就需要一个强制转化
比如当前你需要的是一个label 这个label是从dg中找到的控件,为了更好的让后面的代码知道这是一个label需要强制转化
第二:e代表你当前的母控件的行,他要从行里的items也就是项中寻找你想要的控件
有的时候你这样还不能够转化需要这样一个循环
for(int i = 0; i<dg1.items.count; i++)
{
Label lb1 = (Label)dg.items[i].Findcontrols("lb**")
}
遇到问题可以多看看!祝你好运!
c语言中有类型隐式转化,
这种(type)称牵制转换
e.Item.FindControl("Label1");//表示在当前对象找到的对象Label1
==
(Label)e.Item.FindControl("Label1");//显式转换为Label类型
==
e代表当前对象System.Web.UI.WebControls.DataGridCommandEventArgs 通俗点说就是当前编辑行