我的代码是这样的:
......
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
(Label)label_fujian=(Label)DataList1.FindControl("Label_txt");
(HyperLink)label_title=(HyperLink)DataList1.FindControl("HyperLink_txt");
if ((string)DataBinder.Eval(e.Item.DataItem, "News_Key") == "True")
{
label_fujian.Visible = true;
label_title.Visible = true;
}
else
{
label_fujian.Visible = false;
label_title.Visible = false;
} }
但是以上代码不执行。错在哪里?
......
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
(Label)label_fujian=(Label)DataList1.FindControl("Label_txt");
(HyperLink)label_title=(HyperLink)DataList1.FindControl("HyperLink_txt");
if ((string)DataBinder.Eval(e.Item.DataItem, "News_Key") == "True")
{
label_fujian.Visible = true;
label_title.Visible = true;
}
else
{
label_fujian.Visible = false;
label_title.Visible = false;
} }
但是以上代码不执行。错在哪里?
那显示的是什么 判断部分 肯定有个真假吧
要么 label_fujian.Visible = true; 要么 label_fujian.Visible = false; 你News_Key字段是什么类型的?你可以设置端点 跟踪一下 看看为何 没有执行 或者没有达到你的目的。
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
{
Label label_fujian=(Label)DataList1.FindControl("Label_txt");
HyperLink label_title=(HyperLink)DataList1.FindControl("HyperLink_txt");
label_fujian.Visible = true;
label_title.Visible = true;
{
//提取rptShowSort中的控件
DataList d = (DataList)e.Item.FindControl("dlstSmallSort");
LinkButton lnk = (LinkButton)e.Item.FindControl("lnkBigSort"); //执行存储过程
SqlConnection conSmallSort = DB.createCon();
SqlCommand cmdSmallSort = new SqlCommand("proSelectSmallSort",conSmallSort);
cmdSmallSort.CommandType = CommandType.StoredProcedure;
cmdSmallSort.Parameters.Add("@ClassName", lnk.Text);
conSmallSort.Open(); //执行存储过程
SqlDataReader sdrSmallSort = cmdSmallSort.ExecuteReader(); //绑定到rptSmallSort控件
d.DataSource = sdrSmallSort;
d.DataBind(); //关闭连接
conSmallSort.Close(); }这是我的,我的也不执行。我晕了。快。
(Label)e.Item.FindControl("Label_txt") 在即时窗口中现实为null
这个是不是2005做了调整。记得在2003中这么做是可行的。