我写了下面一段代码,想点击按钮后图片发生变化,不知为什么只变化一次,不能显示"~/image/wr2.gif"这个图片,代码是这样的:

解决方案 »

  1.   

    很明显,逻辑错误
    把这一个
    viewstate["orderdire"]去掉第一个if(ViewState["OrderDire"]==null || ViewState["OrderDire"]=="ASC")
      

  2.   

     protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
        {
            //ViewState["OrderDire"] = "ASC";
            ImageButton imgbutton = sender as ImageButton;
            if (ViewState["OrderDire"]==null || ViewState["OrderDire"] == "ASC")
            {
                imgbutton.ImageUrl = "~/image/wr1.gif";
                ViewState["OrderDire"] = "Desc";
            }
            else if (ViewState["OrderDire"] == "Desc")
            {
                imgbutton.ImageUrl = "~/image/wr2.gif";
                ViewState["OrderDire"] = "ASC";
            }
        }
    这样吗?好像还是不行啊
      

  3.   

    你每次单击按钮都执行viewstate["orderdire"]="ASC"......
    就像ls说的 逻辑错误... 
      

  4.   

     protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
        {
            ImageButton imgbutton = sender as ImageButton;
            if (ViewState["OrderDire"]==null || ViewState["OrderDire"] == "ASC")
            {
                imgbutton.ImageUrl = "~/image/wr1.gif";
                ViewState["OrderDire"] = "Desc";
            }
            else if (ViewState["OrderDire"] == "Desc")
            {
                imgbutton.ImageUrl = "~/image/wr2.gif";
               // ViewState["OrderDire"] = "ASC";
            }
        }
    改成这样,好像还是不行啊
      

  5.   

    你在if里已经给viewstate赋值了。所以每次就都执行else了
      

  6.   

    你这是什么逻辑啊!!这样执行来执行去,最后还进的是else你把if里的ViewState["OrderDire"] = "Desc";去掉!
      

  7.   

    无论怎么点击 ViewState["OrderDire"] = "ASC";这个衡成立的 
      

  8.   


    你都赋值了,肯定不走else
      

  9.   

    protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
    {
       ImageButton imgbutton = sender as ImageButton;
       if (ViewState["OrderDire"]==null || ViewState["OrderDire"] == "ASC")
       {
          imgbutton.ImageUrl = "~/image/wr1.gif";
       }
       else if (ViewState["OrderDire"] == "Desc")
       {
          imgbutton.ImageUrl = "~/image/wr2.gif";
       }
    }
      

  10.   

    protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
      {
      ImageButton imgbutton = sender as ImageButton;
      if (ViewState["OrderDire"]==null || ViewState["OrderDire"] == "ASC")
      {
      imgbutton.ImageUrl = "~/image/wr1.gif";
      ViewState["OrderDire"] = "Desc";
      }
      else if (ViewState["OrderDire"] == "Desc")
      {
      imgbutton.ImageUrl = "~/image/wr2.gif";
      // ViewState["OrderDire"] = "ASC";
      }
      }
    改成这样,好像还是不行啊 
      

  11.   

    protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
    {
      if(ViewState["OrderDire"]==null)
      {
    ViewState["OrderDire"] = "ASC";
      }
      else
      {
       if (ViewState["OrderDire"] == "ASC")
       {
       imgbutton.ImageUrl = "~/image/wr1.gif";
       ViewState["OrderDire"] = "Desc";
       }
       else if (ViewState["OrderDire"] == "Desc")
       {
       imgbutton.ImageUrl = "~/image/wr2.gif";
       ViewState["OrderDire"] = "ASC";
       }
      }
    }试试看!
      

  12.   

    你的ImageButton是放在那里的?是单独的吗?还是放在控件里的?
      

  13.   

    protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
      {
      //ViewState["OrderDire"] = "ASC";
      ImageButton imgbutton = sender as ImageButton;
      if (ViewState["OrderDire"]==null && ViewState["OrderDire"] == "ASC")
      {
      imgbutton.ImageUrl = "~/image/wr1.gif";
      ViewState["OrderDire"] = "Desc";
      }
      else if (ViewState["OrderDire"] == "Desc")
      {
      imgbutton.ImageUrl = "~/image/wr2.gif";
      ViewState["OrderDire"] = "ASC";
      }
      }
      

  14.   

    protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
      {
      //ViewState["OrderDire"] = "ASC";
      ImageButton imgbutton = sender as ImageButton;
      if (ViewState["OrderDire"]==null || ViewState["OrderDire"].ToString() == "ASC")
      {
      imgbutton.ImageUrl = "~/image/wr1.gif";
      ViewState["OrderDire"] = "Desc";
      }
      else if (ViewState["OrderDire"].ToString() == "Desc")
      {
      imgbutton.ImageUrl = "~/image/wr2.gif";
      ViewState["OrderDire"] = "ASC";
      }
      }
      

  15.   

    protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
      {
      //ViewState["OrderDire"] = "ASC";
      ImageButton imgbutton = sender as ImageButton;
      if (ViewState["OrderDire"]!=null && ViewState["OrderDire"] == "ASC")
      {
      imgbutton.ImageUrl = "~/image/wr1.gif";
      ViewState["OrderDire"] = "Desc";
      }
      else if (ViewState["OrderDire"] == "Desc")
      {
      imgbutton.ImageUrl = "~/image/wr2.gif";
      ViewState["OrderDire"] = "ASC";
      }
      }
    上面的写错了  因该是不等于null