2013-08-27 63 views
2

在我的項目中,有一個組合框「狀態」,其中三個值處於活動狀態,處於活動狀態並處於工作狀態。根據要求,所選值應該表示爲一個整數,所以我編寫了代碼,以便所選值的索引將被存儲。現在的問題是,當我嘗試在更新狀態時從組合框中選擇值時,它應該顯示爲listview中的值。如果我選擇0,它應該顯示活動狀態,1表示處於非活動狀態,2表示處於活動狀態。 到目前爲止,我用來獲取值的代碼如下,請幫助我獲取整數的值。如何以整數表示組合框的數據

private void btnUpdateSupport_Click(object sender, EventArgs e) 
     { 
      SqlConnection con = Helper.getconnection(); 
      SqlCommand cmd = new SqlCommand(); 
      cmd.Connection = con; 
      cmd.CommandType = CommandType.Text; 
      string SupportName = txtSupportName.Text; 
      string SupportDesignation = txtSupportDesignation.Text; 
      //string SupportStatus = txtSupportStatus.Text; 
      string SupportStatus = cbSupportStatus.SelectedItem.ToString(); 
      //string SupportStatus = SqlCommand(); 
      int i = 0; 
      string s = "Active"; 
      // string result = int.TryParse(s, out i); 

      if (cbSupportStatus.SelectedItem != null) 
      { 
       int x = int.Parse(cbSupportStatus.SelectedItem.ToString()); 
      } 
      else 
      { //Value is null } 

       cmd.CommandText = "Update Status1 set Designation='" + SupportDesignation + "', Status='" + SupportStatus + "' where Name= '" + SupportName + "' "; 
       MessageBox.Show(cmd.CommandText); 
       con.Open(); 
       cmd.ExecuteNonQuery(); 
       con.Close(); 

      } 
     } 
+0

你不能使用ComboBox.SelectedIndex?這將給你所選項目的從零開始的整數 – iabbott

+0

是的,沒關係,使用選定的索引我能夠將索引值存儲到數據庫中,現在問題是我想要將該索引的相應值另一種形式進行更新。 –

+0

所以組合框只有數字,你想要列表框顯示'數字的含義'?在這種情況下,當項目被添加到列表框中時,只需將數字更改爲它應該的文本 – iabbott

回答

2

從您的意見,組合框只有數字0,1和2

我假設這些數字都存儲在1種形式到數據庫(?),然後以另一種形式檢索,要在其中:

  • 0 =有效
  • 1 =無效
  • 2 =工作

要顯示在列表框中

爲什麼不只是做:

string listVal = ""; 
if(storedVal == 0) 
{ 
    listVal = "Active"; 
} 
else if(storedVal == 1) 
{ 
    listVal = "Inactive"; 
} 
else if(storedVal == 2) 
{ 
    listVal = "Working"; 
} 

if(listVal != "") 
{ 
    // add to listbox 
} 

編輯或存儲在數據庫中的數量,而不是 ,存儲它的意義,那麼就檢索該文本列表框

+0

是的,讓我看看是否有幫助,非常感謝您的幫助,我會永遠感謝您--Karthik –