2011-09-02 3 views
0

목록보기 (한 열 포함)가 있습니다. 이 목록보기를 아래 그림과 같이 두 그룹으로 나눴습니다.목록보기 그룹 항목에 대한 두 가지 조건 확인

내 문제는 다음과 같습니다. 어떻게 이런 선택 이벤트를 찾을 수 있습니까? 홀수 그룹 항목 ("하나")을 클릭 한 다음 그룹 항목 ("2")을 클릭하면 뭔가하고 싶습니다.

if 문에서이 두 조건을 어떻게 확인할 수 있습니까? 이 두 조건은 단일 if 문에서 수행해야하는 조건입니다. 단일 조건을 사용할 수 있습니까?

enter image description here

나는 C# 및 윈폼 응용 프로그램을 사용하고 있습니다. 아무도 이것에 도움을 주시겠습니까?

편집 : 카테고리 이름을 클릭 한 다음 나는 가격 범위를 클릭하면

Category names 
    name 1 
    name 2 
    name 3 

    prices 
    >100 
    >200 
    300+ 

, 내가 뭔가를하고 싶다. 단일 조건 점검에서 두 가지를 모두 수행 할 수 있습니까?

답변

1

지금처럼의 SelectedIndexChanged 이벤트를 사용해보십시오 : (의견에 따라)

void listView1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    var selectedItems = listView1.SelectedItems.Cast<ListViewItem>(); 
    var passed = (selectedItems.Select(l => l.Group.Name).Distinct().Count() == 2 && selectedItems.Count() == 2); 
    if (passed) 
    { 
     //Do something... 
    } 
} 

편집을

선택한 각 항목은 다음과 같은 사용 검색하려면 :

참고 : 아래의 코드가 작동하려면 각각의 Name 속성을 설정해야합니다. ur ListViewGroup을 각각 "Category"및 "Prices"로 변경하십시오.

void listView1_SelectedIndexChanged(object sender, EventArgs e) 
{ 
    var selectedItems = listView1.SelectedItems.Cast<ListViewItem>(); 
    var passed = (selectedItems.Select(l => l.Group.Name).Distinct().Count() == 2 && selectedItems.Count() == 2); 
    if (passed) 
    { 
     var categoryItem = selectedItems.Where(l => l.Group.Name.ToLower() == "category").Single(); 
     var priceItem = selectedItems.Where(l => l.Group.Name.ToLower() == "prices").Single(); 
    } 
} 
+0

해당 목록에 적용 할 수 있습니다. 내 질문을 편집 해 주시겠습니까? pls는 질문을 봅니다. 카테고리 이름을 선택한 다음 원하는 항목을 선택하면 ... .. 당신은 도와 주시겠습니까 ... – rockyashkumar

+0

@ 도와주세요 ... – rockyashkumar

+0

@ user844360 - 답변이 업데이트되었습니다. – jdavies