我想实现如下功能:
default.aspx页面有一个按钮Button1,它是具有权限的人才可以看到的,其他人则看不到它。我想这样做:先定义一个User类,里面有个静态方法:public static bool UserHasRight(...).再在default.aspx的html里面的对应Button1的按钮的Visible属性进行如下设置:
Visible=<%# User.UserHasRight()%>。可是没有效果。我记得以前都是这样搞的啊。是不是2005不同于2003的缘故?请高手指教!!!
default.aspx页面有一个按钮Button1,它是具有权限的人才可以看到的,其他人则看不到它。我想这样做:先定义一个User类,里面有个静态方法:public static bool UserHasRight(...).再在default.aspx的html里面的对应Button1的按钮的Visible属性进行如下设置:
Visible=<%# User.UserHasRight()%>。可是没有效果。我记得以前都是这样搞的啊。是不是2005不同于2003的缘故?请高手指教!!!
然后在html里面的Button1的text属性进行如下设置:text="<%# Text()%>"
结果Button1的文本为空,好像取到了空值。怎么回事?
Visible=<%=User.UserHasRight()%>。或者在Page_Load()里加一句:
Button1.DataBind()
server tags cant contain <% ... %> contructs.
这是什么原因啊?
TextBox1.Attributes.Add("style","display:"+User.UserHasRight());
顺便问一下:用我开始提出的方法来设置按钮的可见性,应该也是可行的吧?
if(User.UserHasRight() == false)
TextBox1.Visible=False;
else
TextBox1.Visible=True;
你说的上楼的方法,我是知道肯定行的。不过这样总觉得不是个好的解决方法。呵呵
我最想直接在html里面设置不同权限的人可以见到不同的页面内容。不知道大家可不可以帮我啊。
没有 runat=server 的控件才能加
所以它的返回值肯定不是问题。而且,我在default.cs里面线上一个函数
public string Test(){return "hehe";}
然后在html里面的Button1的text属性进行如下设置:
text="<%# Text()%>"
即使这样,按钮Button1的text值还是不会为:"hehe".
到底是2005不支持这样的操作??
我在2003里都是这样搞的啊。大家再来帮忙!!
有 runat=server 的控件是不可以加 <% ... %>的
没有 runat=server 的控件才能加
不管是ASP.net1.1 还是 asp.net2.0都是这样
如果可行,该如何设置? 不想在cs文件里面根据后台信息来设置控件的可见性。
帮忙!!!
结贴!!