首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Webusercontrols控件的属性

Webusercontrols控件的属性
EN

Stack Overflow用户
提问于 2016-11-13 04:39:26
回答 1查看 14关注 0票数 0

我有一个问题,但我找不到合适的术语来进行合理的搜索并解决这个问题。

让我们来看看,当我创建一个页面的时候,我需要创建一个WebUserControl并在html标记中延迟一些类似state = "true“(像标签的文本)的东西,以便页面加载后,不管该控件是否随后在代码中被编辑。

代码语言:javascript
复制
<MyControls:Teste Id="aaa" runat="server" state="false"/>

测试控件代码如下:(该控件的HTML页面为空,只有表头)

代码语言:javascript
复制
public partial class WebUserControls_WUC_Tect : System.Web.UI.UserControl
{
    private static bool state ;
    public bool State 
    {
        get { return state ; }
        set { state = value; }
    }
    protected void Page_Load(object sender, EventArgs e)
    {

    }
}

问题:

每当页面返回到服务器并重新加载时,状态变量总是被设置为false或true,这取决于我传递的初始状态,我想让这个变量只在页面开始时加载一次,然后只能通过codebeind进行更改。

我很感谢你的建议。

帕特里克·维加问候

EN

回答 1

Stack Overflow用户

发布于 2016-11-14 23:13:55

您需要使用ViewState来存储属性值,以保存持久化值。

代码语言:javascript
复制
public partial class WebUserControls_WUC_Tect : System.Web.UI.UserControl
{
    private static bool state ;
    public bool State 
    {
        get
        {
        if (ViewState["MyState"] == null)
        {
            ViewState["MyState"] = false;
        }
        return (bool)ViewState["MyState"];
        }
        set
        {
        ViewState["MyState"] = value;
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {

    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40567416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档