WPF C1FlexGrid에서 FlexGridFilter와 CellFactory를 함께 사용할때 필터링 기능이 되지 않는 문제점
페이지 정보
작성자 소망 작성일 2021-05-28 14:54 조회 2,070회 댓글 0건본문
첨부파일
관련링크
<c1:C1FlexGrid Grid.Column="0" x:Name="flex1" HorizontalAlignment="Stretch" AutoGenerateColumns="False" AllowMerging="All"
Style="{StaticResource excelBlue}"
ItemsSource="{Binding Exams}">
<c1:C1FlexGridFilterService.FlexGridFilter>
<c1:C1FlexGridFilter FilterApplied="C1FlexGridFilter_FilterApplied" />
</c1:C1FlexGridFilterService.FlexGridFilter>
<c1:C1FlexGrid.Columns>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="연번" Binding="{Binding No}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="이름" Binding="{Binding User_name}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="A0" Binding="{Binding Answer[0]}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="P0" Binding="{Binding Point[0], Converter={StaticResource OXConverter}}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="A1" Binding="{Binding Answer[1]}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="P1" Binding="{Binding Point[1], Converter={StaticResource OXConverter}}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="A2" Binding="{Binding Answer[2]}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="P2" Binding="{Binding Point[2], Converter={StaticResource OXConverter}}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="A3" Binding="{Binding Answer[3]}"/>
<c1:Column HeaderHorizontalAlignment="Center" Width="Auto" Header="P3" Binding="{Binding Point[3], Converter={StaticResource OXConverter}}"/>
</c1:C1FlexGrid.Columns>
</c1:C1FlexGrid>
이렇게 디자인해서 실행하면 정상적으로
각 헤더 컬럼에서 필터링 기능을 사용할 수 있게 됩니다.
그런데
behindcode에 아래 코드를 추가하면
flex1.CellFactory = new Exam2CellFactory();
각 헤더를 클릭했을 때 필터링 기능이 안되고 정렬 기능으로 전환됩니다.
필터링도 되고 셀펙토리도 적용되도록 하려면 어떻게 해야 될런지요?
첨부된 캡쳐화면은 각 상황별 실행결과 입니다.
캡쳐이미지 01 : 헤더를 클릭하면 필터링이 됨
캡쳐이미지 02 : 셀펙토리를 적용하면 정렬만 됨
댓글목록
등록된 댓글이 없습니다.