2012-06-27 108 views
0

如果所有按钮都应该启用,SetVisibility会针对数据库进行检查。我想要禁用所有按钮if setvisility(UserID) == false禁用按钮C#

代码的这一部分仅禁用交替向上和向下按钮。有人可以建议为什么会发生这种情况?

else 
{ 
    Button b = e.Item.FindControl("btnmoveup") as Button; 
    b.Enabled = false; 
    Button b2 = e.Item.FindControl("btnmovedown") as Button; 
    b2.Enabled = false; 
} 

下面是完整的代码:

if (e.Item.ItemType == ListItemType.Item) 
{ 
    String userID = User.Identity.Name.Split('\\')[1]; 
    if (setvisibility(userID) == true) 
    { 
     if (e.Item.ItemIndex == 0) 
     { 
      Button b = e.Item.FindControl("btnmoveup") as Button; 
      b.Enabled = false; 
     } 

     DataView view = (DataView)SqlDataSource1.Select(DataSourceSelectArguments.Empty); 
     DataTable result = view.ToTable(); 
     if (e.Item.ItemIndex == (result.Rows.Count) - 1) 
     { 
      Button b2 = e.Item.FindControl("btnmovedown") as Button; 
      b2.Enabled = false; 
     } 
    } 
    else // How to disable all the buttons ? 
    { 
     Button b = e.Item.FindControl("btnmoveup") as Button; 
     b.Enabled = false; 
     Button b2 = e.Item.FindControl("btnmovedown") as Button; 
     b2.Enabled = false; 
    } 
} 
+0

不应该'Item.HasControls'是'Item.FindControl'? – dtsg

+0

@Duane对不起,我现在改变了它仍然有相同的错误 – Pradit

回答

3

用途:

if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) 
+0

作品谢谢@ kapil – Pradit