如何在ASP.NET中获取代码中的属性?

时间:2013-09-06 09:28:54

标签: asp.net c#-4.0

我正在研究ASP.NET。我是新手。我需要设置一个表属性(iscollect="true")。我需要在我的代码后面获取此属性。如何让它成为现实。请帮忙。提前致谢

或者如果我做错什么,请告诉我 这是我的例子

<table width="100%" border="0" align="center" runat="server" id="Personal" iscollect="true">
    <tr>
        <td><btn:collection ID="collect" runat="server"/></td>
    </tr>
</table>

背后的代码

public bool iscollect { get; set; }
protected void btnContinue_Click(object sender, EventArgs e)
{
    bool var = iscollect;
    if (iscollect==true)
    {
        Personalcollect.Visible = true;
        SavecollectDetails();
    }
}

如何使此属性与我在后面的代码中设置的一样真实。请帮忙。 谢谢!

4 个答案:

答案 0 :(得分:1)

iscollect不会在请求之间保留。尝试将其存储在视图状态中,如下所示:

public bool iscollect {
    get {return (bool)(ViewState["iscollect"] ?? false)}
    set { ViewState["iscollect"] = value; }
}

然后在ASPX文件中添加该属性:

iscollect="<%= iscollect %>"

答案 1 :(得分:1)

您可以使用Attributes属性获取表的属性,例如

string value = Personal.Attributes["iscollect"].ToString();

当您在页面上声明了一个名为iscollect的属性时,您可以将其分配给表标记中指定的值。

private bool _isCollect = false;
public bool IsCollect
{
  get
  {
    Boolean.TryParse(Personal.Attributes["iscollect"], out _isCollect);
    return _isCollect;
  }
}

答案 2 :(得分:1)

试试这个:

在ASPX中:

... runat="server" id="Personal"iscollect='<%=iscollect%>'>

答案 3 :(得分:0)

我不知道你是如何设法编译代码的,但这应该有效:

public bool iscollect {
    get {return (bool)(ViewState["iscollect"] ?? false)}
    set { ViewState["iscollect"] = value; }
}

protected void btnContinue_Click(object sender, EventArgs e)
{
    iscollect = Convert.ToBoolean(Personal.Attributes["iscollect"]);

    if (iscollect)
    {
        Personalcollect.Visible = true;
        SavecollectDetails();
    }
}


<table width="100%" border="0" align="center" runat="server" id="Personal" iscollect="<%=iscollect%>">
    <tr><td><btn:collection ID="collect" runat="server" /></td></tr>
</table>