c# - Repeater 中的用户控件

标签 c# asp.net user-controls postback repeater

我有一个提供投票按钮的用户控件(用于 SO 类型的投票模型)- 它包含一个保留记录 ID 的私有(private) int 成员。在转发器之外,它运行良好——回发工作,并且正确的 id 保留在用户控件中。

在中继器内部,一个 itemdatabound 事件处理程序将正确的 ID 与用户控件相关联并且它正常工作 - 显示来自数据库的正确投票计数。但是,当按下其中一个投票按钮时,它会向用户控件触发回发,并且该控件已丢失其私有(private) int 成员的内容,因此它不再起作用。

我已经尝试过在回发时重新绑定(bind)用户控件,并仅在初始加载时绑定(bind)它——两种方式的问题都是一样的。

如何让用户控件在回传中保留该 int 的值?

最佳答案

您是否尝试过将值放入 View 状态?

public string Id{
    get
    {
        return this.ViewState["Value"] == null ?
            0 :
            (int)this.ViewState["Value"];
    }
    set { this.ViewState["Value"] = value; }
}

关于c# - Repeater 中的用户控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/575063/

相关文章:

WPF DataGrid - 为什么额外的列

c# - 用户控件数据gridview未加载数据

c# - 查找满足某些条件的所有集合( vector )

c# - 在 WPF 中制作图形的最佳方法是什么? (或者通常也适用于 WPF)

asp.net - 如何在网址栏中隐藏 asp 网址?

c# - 从静态类返回 IHttpActionResult 的最佳方法

c# - 在 web.config 中编辑设置

c# - Settings.settings 中是否允许可空的 int 类型?

asp.net - 在不丢失反向链接的情况下重写网站

c# - 透明自定义图形用户控件 : Turning Black on Runtime