第十五讲:DataList控件(二)
课程安排:
DataList控件的ItemCreated事件
找出DataList模板的内部控件
设置内部控件属性
获取当前记录的“新闻编号”
DataList控件的ItemCreated事件
ItemCreated事件是在创建项时被触发,即每当显示一条记录内容时,该事件就会被触发。
该事件的语法为
void Item_Created(Object sender,DataListItemEventArgs e)
使用参数e可以获取当前项的索引号
e.Item.ItemIndex
找出DataList模板的内部控件(使用FindControl方法)
ImageButton imgbtn1=(ImageButton)e.Item.FindControl("ImageButton1");
使用了Item对象的FindControl方法,并将找到的控件,强制类型转换为ImageButton,之后赋值给了对象变量imgbtn1。
实际上,imgbtn1就是找到的对象,他们是同一对象。
设置内部控件属性
imgbtn1.PosBackUrl="~/default2.aspx";
imgbtn1.PosBackUrl="~/default2.aspx?id=1";
imgbtn1.PosBackUrl="~/default2.aspx?id=" + (e.Item.ItemIndex + 1).ToString();
获取当前记录的“新闻编号”
获取当前项的新闻编号的方法:
DataList1.DataKeys[e.Item.ItemIndex];
正确的赋值语句:
imgbtn1.PosBackUrl="~/default2.aspx?id=" + DataList1.DataKeys[e.Item.ItemIndex];