2015-06-05 45 views
0

我想使用变量的字符串值来访问site.master中的控件。该字符串将是控件的名称。使用对象的字符串名称在asp.net中修改其属性

对象的名称是登录,我想它的Visible属性修改,以。事情是,我有一个字符串的名称。

Dim name As String = "Login" ' this string comes from the database 
    name.Visible = True 

我正在使用asp.net与vb.net。我想编辑其属性的对象是在现场掌握以下几点:

<a id="Login" runat="server" href="Login.aspx"><img id="Img1" alt="Back to home page" runat="server" src="DynamicData/Content/Images/back.gif" />Login</a> 

谢谢你们

回答

0

你可以试试这个

<%@ Page Language="VB" %> 
<!DOCTYPE> 
<script runat="server"> 
Protected Sub Page_Load(sender As Object, e As System.EventArgs) 
' 
Dim name As String = "Login" ' this string comes from the database 
Dim item As Object 
' 
For Each item In Me.Controls 
    If item.id = name Then 
    item.visible = False 
    Exit For 
    End If 
Next 
End Sub 
</script> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title></title> 
</head> 
<body> 
    <a id="Login" runat="server" href="default.aspx"><img id="Img1" alt="Back to home page" runat="server" src="DynamicData/Content/Images/back.gif" />Login</a> 
</body> 
</html> 

要检查其工作正常,只是备注超出了将可见性设置为false的行。

+0

谢谢你解决我的问题。事实上,在web.master中,我使用ID来区分每个我想要隐藏的对象。因此,我将这些名称存储在数据库中,每次用户进入页面时,页面都会查询数据库以“知道”必须显示哪些屏幕。 –

+0

您的欢迎道格拉斯,很高兴能够帮助:) – Zeddy

相关问题