2013-10-17 4 views
-2

listview에 패키지 비용이있는 행이 있습니다. 내가해야할 것은 체크 박스를 클릭하면 그 행의 패키지 비용이 합산되어 listview 밖에있는 텍스트 상자에 표시된다는 것입니다. 내가 체크 박스와 메일 링을하고있을 때체크 박스에서 목록보기의 레이블에서 합계를 찾습니다.

ArrayList em = new ArrayList(); 
foreach (GridViewRow row in GridView1.Rows) 
{ 
    CheckBox chkselect = (CheckBox)row.FindControl("CheckBox1"); 
    Label lblcost = (Label)row.FindControl("Label5"); 
    if (chkselect.Checked) 
    { 
     em.Add(lblcost.Text); 
    } 
} 

이 내가이 짓을

+0

안녕하세요, Kamna, [so]에 오신 것을 환영합니다. 텍스트 사용을 자제 해주십시오. 그것은 당신의 게시물을 정말로 읽기 어렵게 만들고 사람들이 그것을 읽지 못하게합니다. 이번에는 게시물을 좀 더 읽기 쉽게하기 위해 편집했지만 다음에 더 적절한 방식으로 게시하면 많은 도움이 될 것입니다. 고맙습니다! –

답변

0

당신이 필요합니다 : 만이 코드를 가지고 있지만 내가 그것을 계산하는 방법을 모른다 - 나는 아무 생각이 무엇을 쓸 필요가 variable의 비용을 합산하려면이 경우 ArrayList이 필요하지 않을 것입니다. 당신은 당신은 진수로 label.Text 캐스팅해야 TextBox

int total = 0; 
foreach (GridViewRow row in GridView1.Rows) 
{ 
    CheckBox chkselect = (CheckBox)row.FindControl("CheckBox1"); 
    Label lblcost = (Label)row.FindControl("Label5"); 
    if (chkselect.Checked) 
    {   
     total += double.Parse(lblcost.Text); 
    } 
} 
textBoxCost.Text = total.ToString(); 
+0

ur help bt에 대한 감사의 말을 전합니다. 버튼 클릭시이 코드를 수행 할 수 있습니다. 우리는 체크 박스를 체크했을 때 자동으로 텍스트 박스에 표시되며, 체크 박스를 선택 취소하면 총계에서 금액이 공제됩니다. – Kamna

+0

You CheckedChanged 이벤트에이 코드를 넣어야합니다. http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.checkbox.checkedchanged.aspx – Adil

+0

bt i hv listview의 항목 템플리트에서이 체크 박스를 선택해야합니다. 이 이벤트를 사용하는 방법 cn u plz expalin .. thx – Kamna

0

Text 속성에 계산 된 총 비용을 할당 할 수 있습니다.

decimal total = 0; 
decimal value = 0; 
foreach (GridViewRow row in GridView1.Rows) 
{ 
    CheckBox chkselect = (CheckBox)row.FindControl("CheckBox1"); 
    Label lblcost = (Label)row.FindControl("Label5"); 
    if (chkselect.Checked) 
    { 
     if (decimal.TryParse(lblcost.Text, out value)) 
     { 
      total += value; 
     } 
    } 
} 

여기서 입력이 숫자가 아닌 경우에보다 안전한 이유를 사용했습니다.

관련 문제