2016-08-06 3 views
0

내 모든 레코드를 ComboBox에 표시하려고하지만 레코드가 한 행에 표시됩니다. 여기 내 코드가있다. 나는 데이터가 검색되는 2 개의 클래스를 만들었다.다른 행의 ComboBox에 레코드 표시

데이터 핸들러 코드 :

public DataSet DataLoader(string _strQuery) 
{ 
    DataSet ds = new DataSet(); 
    ds.Clear(); 

    using (conn = new SqlConnection()) 
    { 
     conn = Connection.getconnection(); 
     oda = new SqlDataAdapter(_strQuery, conn); 
     oda.Fill(ds, "Temp"); 
     conn.Close(); 
     conn.Dispose(); 
     oda.Dispose(); 
    } 

    return ds; 
} 

데이터 클래스 코드 :

public System.String Loadbranch() 
{ 
    string BranchName = ""; 
    string strquery = "select * from Expense"; 
    DataHandler dh = new DataHandler(); 
    System.Data.DataSet dsLoadData = new System.Data.DataSet(); 
    dsLoadData = dh.DataLoader(strquery); 

    if (dsLoadData.Tables["Temp"].Rows.Count > 0) 
    { 
     for (int i = 0; i < dsLoadData.Tables["Temp"].Rows.Count; i++) 
     { 
      BranchName += dsLoadData.Tables["Temp"].Rows[i]["ExpenseID"].ToString(); 
     } 
    } 

    return BranchName; 
} 

기본 폼의 경우 데이터 표시 :

private void Edit_User_Load(object sender, EventArgs e) 
{ 
    this.WindowState = FormWindowState.Maximized; 
    this.MinimumSize = this.Size; 
    this.MaximumSize = this.Size; 

    cbsaveuserid.Items.Add(d.Loadbranch()); 
} 

콤보의 모든 레코드를 보여 제발 도와주세요하지만, 다른 줄에.

+0

는 ASP.NET MVC 또는 .NET 윈폼에 대한 질문인가? – ConnorsFan

+0

.net windows form. –

+0

태그를 수정할 수 있습니까? – ConnorsFan

답변

1

항목은 콜렉션을 나타냅니다.

LoadBranch() 메서드를 수정하여 하나의 연결된 문자열과는 반대로 문자열 모음 (예 : List<string>)을 반환하십시오.

Edit_User_Load()을 수정하여 컬렉션을 반복하고 각 요소를 cvsaveuserid.Items 컬렉션에 추가하십시오.

난 당신의 코드가없는, 그래서 그것을 컴파일 할 수 없습니다,하지만 난이 일 것이라고 생각 :

public List<string> Loadbranches() 
    { 
     List<string> branchNames = new List<string>(); 
     string strquery = "select * from Expense"; 
     DataHandler dh = new DataHandler(); 
     System.Data.DataSet dsLoadData = new System.Data.DataSet(); 
     dsLoadData = dh.DataLoader(strquery); 

     if (dsLoadData.Tables["Temp"].Rows.Count > 0) 
     { 
      for (int i = 0; i < dsLoadData.Tables["Temp"].Rows.Count; i++) 
      { 
       branchNames.Add(dsLoadData.Tables["Temp"].Rows[i]["ExpenseID"].ToString()); 
      } 
     } 

     return branchNames; 
    } 

    private void Edit_User_Load(object sender, EventArgs e) 
    { 
     this.WindowState = FormWindowState.Maximized; 
     this.MinimumSize = this.Size; 
     this.MaximumSize = this.Size; 

     foreach (string branchName in d.Loadbranches()) 
     { 
      cbsaveuserid.Items.Add(branchName); 
     } 
    } 
+0

예를 들어 코드로 나를 도울 수 있습니다. –

+0

네, 효과가 있습니다. 고마워요 @ 브레인 .. 감사합니다 –

관련 문제