none
ListBox增加,删除数据 RRS feed

  • 问题

  • 用List<>接收数据库的数据
      for (int i = 0; i < list.Count; i++)
          {
            c = list[i];
            int day = c.DataTimes.Day;//获取当月日期
            int year=c.DataTimes.Year;//获取年
            int month=c.DataTimes.Month;//获取月
            if (Calendar1.SelectedDate.Year == year)
            {
              if (Calendar1.SelectedDate.Month == month)
              {
                if (Calendar1.SelectedDate.Day == day)
                {
                 
                  //labCalendar.Text =labCalendar.Text+ c.text;
                  ListBox1.Items.Add(c.text.ToString());
                  ListBox1.Items[0].Value = c.id.ToString();
                  //Button2.Visible = true;
                }
               
              }
            }
          } 
    
    2010年10月22日 5:56

全部回复

  • 获取ListBox的Value。int id = Convert.ToInt32(ListBox1.Items[0].Value);

    第一次获取到id.可第二次获取的是文本值。是什么原因??

    2010年10月22日 5:59
  • 你好

    或者你可以嘗試改變以下的CODE 看看

     ListBox1.Items[ListBox1.Items.Count()].Value = c.id.ToString();

    看你的程式碼.. 在一個FOR LOOP 中
    ListBox1.Items.Add(c.text.ToString());
           ListBox1.Items[0].Value = c.id.ToString(); // 像把 C.ID.STRING 的值只寫進 第一個LISTBOX ITEM 中, 好像有點不對

    可不可以給我們多一些資料, 看看你的 LIST 中 的 DATA 是怎麼 的...

    Please correct me if my concept is wrong


    Chi
    2010年10月22日 7:56
  • 当ListBox中含有Value值,则获取的是Value值,否则获取的是Text值
    2010年10月22日 8:47
    版主
  • //选中的日期事件
     protected void Calendar1_SelectionChanged(object sender, EventArgs e)
     { 
       ListBox1.Items.Clear();   
       list = GetCalendar();
       if (Button1.Text.Equals("提交"))
       {
        txtCalendar.Style.Add("display", "block");
       }
       else
       {
        txtCalendar.Style.Add("display", "none");
       }
       for (int i = 0; i < list.Count; i++)
       {
        c = list[i];
        int day = c.DataTimes.Day;//获取当月日期
        int year=c.DataTimes.Year;//获取年
        int month=c.DataTimes.Month;//获取月
        if (Calendar1.SelectedDate.Year == year)
        {
         if (Calendar1.SelectedDate.Month == month)
         {
          if (Calendar1.SelectedDate.Day == day)
          {       
          
           ListBox1.Items.Add(c.text.ToString());
           ListBox1.Items[0].Value = c.id.ToString();       
          }
          
         }
        }
       } 
     }
     //增加
     protected void Button1_Click(object sender, EventArgs e)
     {
      if (Button1.Text.Equals("添加日志"))
      { 
       txtCalendar.Style.Add("display", "block");
       Button1.Text = "提交";
       
      }
      else
      {
       string sql = string.Empty;
       if (txtCalendar.Text == "")
       {
        this.Label1.Text = "不能为空!";
       }
       else
       {
        DateTime ta = Convert.ToDateTime("0001-01-01");
        if (Calendar1.SelectedDate != ta)
        {
         sql = "insert into Calendar values('" + Calendar1.SelectedDate + "','" + this.txtCalendar.Text + "');select @@identity";
    
        }
        else
        {
         sql = "insert into Calendar values('" + Calendar1.TodaysDate + "','" + this.txtCalendar.Text + "') ;select @@identity";
        }
        int result = -1;
        result = Convert.ToInt32(DBHelper1.ExecuteScalar(DBHelper1.ConnectionLocalTransaction, CommandType.Text, sql, null));
        if (result > 0)
        {
    
         this.ListBox1.Items.Add(txtCalendar.Text);
         this.ListBox1.Items[0].Value = result.ToString();
         
         this.txtCalendar.Text = "";
    
        }
        else
        {
         this.Label1.Text = "失败!";
        }
       }
       Button1.Text = "添加日志";
      }
     }
     //删除
     protected void Button2_Click(object sender, EventArgs e)
     { 
      
      if (ListBox1.Text != "")
      { 
       int id = Convert.ToInt32(ListBox1.Items[0].Value);
       string sql = "delete from Calendar where id=" + id;
       int resul = DBHelper1.ExecuteNonQuery(DBHelper1.ConnectionLocalTransaction, CommandType.Text, sql, null);
       if (resul > 0)
       {
        ListBox1.Items.RemoveAt(ListBox1.SelectedIndex);
       }
      }  
      
     }

    2010年10月22日 9:15
  • 当ListBox中含有Value值,则获取的是Value值,否则获取的是Text值
    不得哦!!!!!!

    别人笑我忒疯癫,我笑别人看不穿; 不见五陵豪杰墓,无花无酒锄作田。
    2010年10月26日 8:01