2014-01-17 3 views
0

값을 datatable의 열에서 가져 오는 레이블을 동적으로 추가합니다.데이터 테이블의 레이블에 마지막 열 값만 표시됩니다.

foreach (DataRow row in dt.Rows) 
{ 

    string answer = row["Answer"].ToString(); 
    lblcontrol3.text = answer 
    div.Controls.Add(lblControl3); 
    container.Controls.Add(div); 
} 

그러나 내 레이블에는 마지막 열 값만 표시됩니다. 이 값들은 질문에 대한 답이기 때문에 모두 표시해야합니다. 내 페이지가 다음과 같이 나타납니다. 이 일을하는 다른 방법이 있습니까? 각 루프에

1)Question number 1................... 
[[labelcontrol3 here]] 


2)Question number 2 ................... 
[[labelcontrol3 here]] 


3)Question number 3.................... 
[[[[labelcontrol3 here]] 
+0

레이블은 ** 한 값 ** 만 표시 할 수 있습니다. 물론 마지막 값만 표시합니다. 검색 한 새 행은 ** 이전에 레이블에 표시된 값을 덮어 씁니다. 마지막으로 현재 가치가 있습니다. 여러 값을 표시하려면 listbox, listview 또는 gridview 또는 이와 비슷한 값을 사용해야합니다. –

답변

3

인스턴스화 새 레이블 :

foreach (DataRow row in dt.Rows) 
{ 
    string answer = row["Answer"].ToString(); 
    Label lbl = new Label(); 
    lbl.Text = answer 
    div.Controls.Add(lbl); // I think you need to create new div also 
    container.Controls.Add(div); 
} 

그렇지 않으면 당신이 할당 된 마지막 값을 유지합니다 하나의 라벨을 사용하고 있습니다.

+0

은 각 레이블에 대한 모든 답변을 계속 추가하지 않으시겠습니까? – user3158622

+0

@ user3158622 아니요,이 경우 각 답변이 자체 라벨에 추가됩니다. 'div' 컨트롤에 어떤 타입이 있습니까? –

+1

나는이 문제가 내 div라고 생각한다. im는 div를 먼저 고친 다음, ur 솔루션을 사용한다. 도와 주셔서 감사합니다 – user3158622

관련 문제