that is the way how ASP.NET works, there is no way around it, save those 变量's values in Session variables

解决方案 »

  1.   

    Web Page用Page.IsPostBack来标记是第一次执行还是又事件引起返回执行的。
    在Page_Load中,在if(!IsPostBack){...}中的代码就第一次访问页面时才执行,而LinkButton引起返回时就不会执行了。
      

  2.   

    If (!Page.IsPostBack)
    {
    //第一次初始化页面才运行的代码;
    }//每次都要运行的代码;
      

  3.   

    你只要将你的pageload中得代码放到if(!ispostback){}中就行了
      

  4.   

    第一次见到asp.net里这么灿烂(开头三个真耀眼:p)