2013-09-05 7 views
0

WPF xaml 애플리케이션을 개발 중입니다.이 경우 이미 DB에 데이터를 표현하기 위해 GridView을 개발했습니다. 이제 CheckBoxColumn을 GridView에 추가하고 싶습니다. 목적은 CheckBoxes를 체크하여 GridView에서 DataRow를 선택하는 것입니다. 또한 해당 열의 Checked CheckBox 수를 계산합니다. 나는 프로그래밍에 익숙하지 않아서 이것에 대한 생각이 없다. 도와주세요. 고맙습니다!xaml xamgrid 체크 박스 열에 체크 된 체크 박스를 선택하십시오.

<ig:XamGrid.Columns> 
    <ig:TextColumn Key="Date" Width="150" HeaderText="date" /> 
    <ig:TextColumn Key="Name" Width="100" HeaderText="name" /> 
    <ig:TextColumn Key="Id" Width="120" HeaderText="id" /> 
    <ig:TextColumn Key="Detail" Width="300" HeaderText="detail" /> 
    <ig:CheckBoxColumn Key="Select" Width="100" HeaderText="select" /> 
</ig:XamGrid.Columns> 

답변

0

당신은 소스 컬렉션을 업데이트해야합니다 XamGrid 데이터 바인딩에 ItemsSource 속성을 사용하고 당신이 단순히 수 있어야합니다 경우 행이 데이터 수집입니다

var count = rows.Where(r=>r.select).Count(); 

.

UPDATE 1 :

나는 XamGrid이없는하지만 당신은 표준 데이터 그리드를 사용하는 경우 그 결과는 다음과 같습니다

Data = new ObservableCollection<Step2Data> 
    { 
     new Step2Data { LayerName = "Ania"}, 
     new Step2Data { LayerName = "Bartek", Accept = true}, 
     new Step2Data { LayerName = "Omega"}, 
     new Step2Data { LayerName = "Second"}, 
    }; 

XAML :

<DataGrid ItemsSource="{Binding Data}" AutoGenerateColumns="False"> 
    <DataGrid.Columns> 
     <DataGridTextColumn Header="Layer name" Binding="{Binding LayerName}" /> 
     <DataGridTextColumn Header="Porosity" Binding="{Binding Porosity}" /> 
     <DataGridCheckBoxColumn Header="Accept" Binding="{Binding Accept, UpdateSourceTrigger=PropertyChanged}" /> 
    </DataGrid.Columns> 
</DataGrid> 

그리고 계산하기 선택됨 :

var count = Data.Count(d => d.Accept); 
+0

대단히 감사합니다. – Mora

+0

물론입니다. 업데이트 1을 참조하십시오. – mswietlicki

+0

대단히 감사합니다. 그러나 그리드보기는 xaml xamgrid입니다. 따라서 "Binding"이라는 속성이 없으므로 속성에서 사용해야합니다. – Mora

관련 문제