我有一个提供投票按钮的用户控件(对于SO类型的投票模型) - 它包含一个保留记录ID的私有int成员.在转发器之外,它的功能很好 - 回发工作,并且正确的id保留在用户控件中.
在转发器内部,itemdatabound事件处理程序将正确的ID与usercontrol关联,并且它可以正常工作 - 从数据库中显示正确的投票计数.但是,当按下其中一个投票按钮时,它会触发对用户控件的回发,并且控件已丢失其私有int成员的内容,因此它不再起作用.
我已经尝试在回发时重新数据绑定usercontrol,并仅在初始加载时绑定它 - 问题是两种方式相同.
如何让usercontrol在回发中保留该int的值?
您是否尝试将该值置于viewstate中?
public string Id{ get { return this.ViewState["Value"] == null ? 0 : (int)this.ViewState["Value"]; } set { this.ViewState["Value"] = value; } }