or
private void ChartSelectionBehavior_SelectionChanged(object sender, Telerik.Windows.Controls.ChartView.ChartSelectionChangedEventArgs e) { grid.FilterDescriptors.SuspendNotifications(); IColumnFilterDescriptor filter = grid.Columns["Status"].ColumnFilterDescriptor; filter.SuspendNotifications(); foreach (var point in e.AddedPoints) { var value = ((PieChartData)point.DataItem).Label; filter.DistinctFilter.AddDistinctValue(value); } foreach (var point in e.RemovedPoints) { var value = ((PieChartData)point.DataItem).Label; filter.DistinctFilter.RemoveDistinctValue(value); } filter.ResumeNotifications(); grid.FilterDescriptors.ResumeNotifications(); }<telerik:RadGridView ItemsSource="{Binding QueryableRiskEvents}" AutoGenerateColumns="False" IsReadOnly="True" "> <telerik:RadGridView.Columns> <telerik:GridViewDataColumn DataMemberBinding="{Binding risk_id}" Header="ID"/> <telerik:GridViewDataColumn DataMemberBinding="{Binding equipment_code}" Header="Equipment"/> <telerik:GridViewDataColumn DataMemberBinding="{Binding risk_description}" Header="Description"/> <telerik:GridViewDataColumn DataMemberBinding="{Binding start_date}" Header="Start"/> <telerik:GridViewDataColumn DataMemberBinding="{Binding end_date}" Header="End"/> <telerik:GridViewDataColumn DataMemberBinding="{Binding risk_status, Converter={StaticResource StatIntToString}}" Header="Status"/>public VirtualQueryableCollectionView QueryableRiskEvents { get { var query = Repository.Entities.RiskEvents.OrderBy(r => r.start_date); _queryableRiskEvents = new VirtualQueryableCollectionView(query, typeof(RiskEvent)) { LoadSize = 10, }; return _queryableRiskEvents; } }public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { return "hello"; }public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { return value; }<telerik:RadPane Title="Editor" IsPinned="False" CanUserClose="False" Name="EditorPane" telerikAnimation:AnimationManager.IsAnimationEnabled="False"> <controls:Editor x:Name="Editor"/></telerik:RadPane><UserControl> <UserControl.Resources> <c:InfoBaseViewModel x:Key="InfoBaseViewModel2"/> </UserControl.Resources> <DockPanel Name="InfoDockPanel" DataContext="{StaticResource InfoBaseViewModel2}"> <telerik:RadGridView x:Name="grdInfo" AutoGenerateColumns="False" IsReadOnly="True" ItemsSource="{Binding Path=InfoList}" ShowGroupPanel="False"> <telerik:GridViewDataColumn> <telerik:GridViewDataColumn.Header> <CheckBox Name="chkAll" CommandParameter="{Binding ElementName=chkAll}" Command="{Binding AllCheckedCommand,Source={StaticResource InfoBaseViewModel2}}" ></CheckBox> </telerik:GridViewDataColumn.Header> <telerik:GridViewDataColumn.CellTemplate> <DataTemplate> <CheckBox IsChecked="{Binding Path=IsItemSelected, Mode=TwoWay}"></CheckBox> </DataTemplate> </telerik:GridViewDataColumn.CellTemplate> <telerik:GridViewDataColumn DataMemberBinding="{Binding FullName}" Header="{Binding Path=ApplicationStrings.FullNameLabel, Source={StaticResource ResourceWrapper}}"></telerik:GridViewDataColumn> </telerik:GridViewDataColumn> </telerik:RadGridView> </DockPanel></UserControl>public ICommand AllCheckedCommand{ get { return _allItemsChecked ?? (_allItemsChecked = new RelayCommand(AllCheckedHandler, null)); }}public void AllCheckedHandler(object sender){ // Always gets to here... var chkAll = sender as System.Windows.Controls.CheckBox; if (chkAll == null) { // ...but always fails Logger.Error("Error binding the 'Select All' checkbox."); } else { foreach (var item in InfoList) { item.IsItemSelected = (bool)chkAll.IsChecked; } base.OnPropertyChanged("InfoList"); }}grd.MaxHeight = double.PositiveInfinity;grd.ScrollIntoView(objSel);grdMain.ScrollIntoView(objSel);grd.BringIntoView();