首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关于DataList 绑定数据后对LinkButton控件属性的设置有关问题

2012-03-18 
关于DataList 绑定数据后对LinkButton控件属性的设置问题最近写程序遇到一个问题:就是我想在DataList绑定

关于DataList 绑定数据后对LinkButton控件属性的设置问题

  最近写程序遇到一个问题:
  
  就是我想在DataList绑定表格后,对表格里的LinkButton的Enable属性进行设置。目的是当用户未登录时,linkbutton的enable=false,而登录后根据用户角色的权限来设置LinkButton的Enable属性。意思就是让DataList绑定后的LinkButton部分可用。
   
  我用了以下方法,但是运行后不起作用,请个为帮忙:
 
  前台代码:

  <asp:DataList ID="Project_dl" runat="server" BorderWidth="0" DataKeyField="Project_ID"
RepeatColumns="1">
<itemtemplate>
<table width="798" border="0" cellpadding="0" cellspacing="0" bgcolor="#f0f7ff">
<tr>
<td width="30" class="wt10"><asp:Label ID="lb" runat="server" BackColor="transparent" CssClass="wt10" /></td>
<td width="28%" class="wt8"><asp:Label ID="lb1" runat="server" BackColor="transparent" Text='<%# DataBinder.Eval(Container.DataItem,"C_User_Name") %>' CssClass="wt8" />
&nbsp;&nbsp;
<asp:Label ID="lb2" CssClass="wt8" Text='<%# DataBinder.Eval(Container.DataItem,"Od_Type") %>' runat="server" /></td>
<td width="12%" class="wt8">信誉度:[<span class="wt2"><%# DataBinder.Eval(Container.DataItem,"Od_Prestige") %></span>]</td>
<td width="25%" class="wt8">[成功案例][会员简介][会员子站]</td>
<td width="18%" align="center" class="wt8 td11"><%# DataBinder.Eval(Container.DataItem,"Add_Time") %></td>
<td width="80"><asp:LinkButton ID="book_lb" runat="server"><img src="images/Book.gif" border="0" /></asp:LinkButton>
</td>
</tr>
<tr>
<td colspan="6" class="td6"><asp:Panel ID="Panel4" runat="server" Height="100%" Width="100%">
<table width="100%" border="0" cellspacing="3" cellpadding="0">
<tr>
<td align="center" class="wt8">保密留言,只有<span class="wt10">信息发布者</span>和<span class="wt10">留言者</span>才能查看留言信息,您无权查看。 </td>
</tr>
</table>
</asp:Panel>
<asp:Panel ID="Panel5" runat="server" Visible="false" Height="100%" Width="100%">
<table width="100%" border="0" cellspacing="3" cellpadding="0">
<tr>
<td align="left" class="wt8"><%# DataBinder.Eval(Container.DataItem,"Book_info") %></td>
</tr>
</table>
</asp:Panel></td>
</tr>
</table>
</itemtemplate>
</asp:DataList>


  后台对LinkButton属性设置代码:

for (int i = 0; i < row_no - 1; i++)
  {
  check_name = ((Label)Project_dl.Items[i].FindControl("lb1")).Text;
  if (check_name == username)
  {
  //Response.Write("<script language='javascript'>alert('" + check_name + "!');</script>");
  ((Panel)Project_dl.Items[i].FindControl("Panel4")).Visible = false;


  ((Panel)Project_dl.Items[i].FindControl("Panel5")).Visible = true;
  ((LinkButton)Project_dl.Items[i].FindControl("book_lb")).Enabled = true;
  }
  else
  {
  //Response.Write("<script language='javascript'>alert('" + check_name + "!');</script>");
  ((Panel)Project_dl.Items[i].FindControl("Panel4")).Visible = true;
  ((Panel)Project_dl.Items[i].FindControl("Panel5")).Visible = false;
  ((LinkButton)Project_dl.Items[i].FindControl("book_lb")).Enabled = false;
  }
}


  其中对Panel的Visable属性设置也是一样的,但也是不起作用。

  我也试过用DataList 的OnItemDataBound事件来设置,但结果一样。

  请高手指点,在线等~!!!!谢谢!!

[解决办法]
row_no=1

 
for (int i = 0; i < row_no - 1; i++) 

肯定不会命中了

改成
目留言板权限 
for (int i = 0; i < row_no ; i++) 

热点排行