Telerik Forums
UI for WPF Forum
3 answers
310 views

Hi Telerik,

 

We are using a RadGridView bound to an ObservableCollection wrapped in a CollectionViewSource. Sorting a large number of rows seems to be slower than creating a new collection, sorting this collection using LINQ, then rebinding the RadGridView to the collection. We've attempted to use the QueryableCollectionView as the underlying collection source for the RadGridView and the performance is not improved over the CollectionViewSource when sorting (i.e. clicking on a column in the RadGridView to sort asc/desc/none).

Could you please offer suggestions to help speed up sorting performance? We have followed all suggestions in the "Degraded Performance" article for the UI for WPF suite. Please note that we are using proxy types for entities and prefer not to implement or derive from base classes.

For example, is there a WPF version for this article?:

http://www.telerik.com/support/kb/winforms/details/use-custom-comparer-to-speed-up-the-sorting-in-radgridview

 

Kind regards

Stefan
Telerik team
 answered on 01 Jun 2017
3 answers
131 views

Hi,

Is 2nd feature available in GanttView?

* Click in a Selects the row. Deselect all other rows (This one is existing)
* Hold Ctrl and Adds the row to the selection. Remove if already selected (the Addition is existing but the Remove is not)
* Hold Shift and Adds to the selection (This one is also existing)

Regards,

John

Dilyan Traykov
Telerik team
 answered on 01 Jun 2017
1 answer
207 views

Hi,

We are using your RadGridView in a lot of screens.

For the first time, we have to use the full text search (ctrl F) on a grouped gridview.

In our case (300 lines grouped in 6 groups), we are facing of some performance issue (which give the grid unusable for a final user: too slow).

Do you have a recommandation or best practices for the fulltext search ?

 

The problem disapear if we do that : control the lauch of the search after a timer of 300ms.
So, we change the RadGridView property IsSearchingDeferred="True" and add the following code in the code behind of our view (named ContractDocumentsView)

01....
02. 
03.// Constructor of ContractDocumentsView
04.        public ContractDocumentsView(IServiceLocator serviceLocator)
05.        {
06.            InitializeComponent();
07. 
08.            if (DesignerProperties.GetIsInDesignMode(this))
09.            {
10.                return;
11.            }
12. 
13.            // UserActionDelay is DispatcherTimer timer of 300 ms that execute an Action
14.            this.userActionDelay = new UserActionDelay(this.UpdateFilterOnSearchText);
15.            this.documentsGridView.SearchPanelVisibilityChanged += (sender, args) =>
16.            {
17.// We are keeping a var on the telerik GridViewSearchPanel, initialized once when SearchPanelVisibilityChanged
18.                if (this.gridSearchPanel != null)
19.                    return;
20. 
21.                if (args.NewVisibility == Visibility.Visible)
22.                {
23.                    // ChildrenOfType is a method that search in the visual tree children...
24.                    this.gridSearchPanel = this.documentsGridView.ChildrenOfType<GridViewSearchPanel>().First();
25.                    this.gridSearchPanel.PreviewTextInput += SearchViewPanelOnPreviewTextInput;
26.                }
27.            };
28.        }
29. 
30.        private void SearchViewPanelOnPreviewTextInput(object sender1, TextCompositionEventArgs textCompositionEventArgs)
31.        {
32.            this.gridSearchPanel.PreviewTextInput -= SearchViewPanelOnPreviewTextInput;
33.           var searchBox = this.gridSearchPanel.ChildrenOfType<TextBox>().First();
34.            searchBox.TextChanged += SearchTextBox_TextChanged;
35.        }
36. 
37.        private void SearchTextBox_TextChanged(object sender, TextChangedEventArgs e)
38.        {
39.            this.searchText = ((TextBox)e.OriginalSource).Text;
40.            userActionDelay.DoAction();
41.        }
42. 
43.        private void UpdateFilterOnSearchText()
44.        {
45.            var searchViewModel  = this.gridSearchPanel.DataContext as Telerik.Windows.Controls.GridView.SearchPanel.SearchViewModel;
46.            if (searchViewModel != null)
47.            {
48.                searchViewModel.SearchText = this.searchText;
49.            }
50.        }
51. 
52....
Stefan
Telerik team
 answered on 01 Jun 2017
0 answers
154 views

Hello,

I am trying to add row level validation for my RawTableParamView. RadGridView contains observable collection of SingleRow objects. This class extends from prism BindableBase. One of SingleRow properties is BindableDPDataItem which implements INotifyDataErrorInfo interface and checks if NewValue property showed in custom viewCell template is valid. I attach all important files here. Could you tell me how may I achieave row level validation and if its possible cell level validation for custom cell defined in RadGridView. I found your tutorial and git examples but don't understand how to configure RadGridView to look for BindableDPDataItem validation. Could you please show me how modify my code to make it work?

Maciej
Top achievements
Rank 1
 asked on 01 Jun 2017
2 answers
167 views

Is there a way to get the zoom and pan controls that are in the RapMap to be stand alone, or a way to use the RadMap as a container?  

 

Example, i have a simple display that I want the user to be able to interact with just like if it were a map.  But in this scenario, it could be anything within a RadPanl (or dockpanel).

Tyler
Top achievements
Rank 1
 answered on 31 May 2017
3 answers
407 views

I'm trying to understand the best path forward to implement a column of CheckBoxes in a RadGridView. The CheckBoxes need to be conditionally visible (or hidden) per row-level business logic (a boolean value for each row, a different property from the one represented in the CheckBox).

While I have been able to implement this successfully using a DataTemplateSelector, which switches in either a CellTemplate containing the CheckBox, or an "empty" CellTemplate... I am still having a challenge with controlling the UI behavior. What happens is if a user clicks the empty cell, it goes into Edit Mode, as if accepting text; I don't want this to happen... it should remain empty and not allow any interaction. For the cell with the CheckBox, I can click inside and toggle the CheckBox on and off (checked/unchecked), which is great... but if a user clicks just outside the CheckBox but still inside the cell where the CheckBox resides, it too will enter Edit Mode, as if accepting text (and it hides the CheckBox). Again, I don't want this to happen.

What's the best path for allowing only a CheckBox inside such a column, and disallowing any UI elements other than the conditionally appearing CheckBoxes?

Thanks in advance for your help.
Dilyan Traykov
Telerik team
 answered on 31 May 2017
1 answer
149 views

I have this menu if you can see the attached file (menu1.png) is the one thats working though the inline height generating is not correct.

Height should cover all of the items included in the group.

 

The attached file (menu2.png) should be the correct one. I checked the CSS and if I set the height of the .rpslide or the .rpgroup to auto or 100% the animation of the slide will not work.

Martin
Telerik team
 answered on 31 May 2017
6 answers
544 views

Hi 

I am plotting 10,000 data points on RadChartView. The UI gets freezed\hanged till all 10,000 data points are plotted on RadChartView. It took around 20 seconds to load all the data points 

Instead of plotting all the 10,000 data points in one shot, I tried plotting data points at the interval of 100
i,e add 100 data points to collection via thread and update UI via Dispatcher object, again add 100 data points to collection and update UI (even this will hang UI) and so on...

Can we show only few data points on Chartview which user can view or see and remaining points are shown only when user do zooming or scrolling ?
If so how can it be done ?

Thanks

Deepak Deshmukh

Dinko | Tech Support Engineer
Telerik team
 answered on 31 May 2017
3 answers
223 views
How can I set RadTilelist for WPF to select a single item rather than multiple items ?
Stefan
Telerik team
 answered on 31 May 2017
2 answers
305 views

Hello telerik,

 

I am about to finish a custom implementation of a feature which consists of an element from a treeview being dragged to a Docking pane.

The attached screen shot shows how it happens.

 

The only thing missing so far is I need to find a way to dock it maximized or expanded, as of now the usercontrol comes taking only part of the space available as default.

 

is there an easy way to achieve the desired behavior problematically?

Here is my code:

private void RadDocking_Drop(object sender, DragEventArgs e)
    var data = e.Data.GetData("TreeViewDragDropOptions");
    var item = ((TreeViewDragDropOptions)data).DraggedItems.First();
    var splitter = ((RadDocking)sender).Items[0];
    RadPaneGroup group = (RadPaneGroup)((RadSplitContainer)splitter).Items[0];
    var newPane = new RadPane();
    switch (((RadTreeViewItem)item).Name)
    {
        case "RadPdfViewer":
            newPane.Content = new UserControl1();
            newPane.Header = "uc1";
            break;
 
        case "RadChartview":
            newPane.Content = new UserControl2();
            newPane.Header = "uc2";
            break;
 
        case "RadDataFilter":
            newPane.Content = new UserControl3();
            newPane.Header = "uc3";
            break;
 
    }
    if (newPane.Content != null)
        group.AddItem(newPane, Telerik.Windows.Controls.Docking.DockPosition.Center);
}

 

 

Thank you

Jacob
Top achievements
Rank 1
 answered on 31 May 2017
Narrow your results
Selected tags
Tags
GridView
General Discussions
Chart
RichTextBox
Docking
ScheduleView
ChartView
TreeView
Diagram
Map
ComboBox
TreeListView
Window
RibbonView and RibbonWindow
PropertyGrid
DragAndDrop
TabControl
TileView
Carousel
DataForm
PDFViewer
MaskedInput (Numeric, DateTime, Text, Currency)
AutoCompleteBox
DatePicker
Buttons
ListBox
GanttView
PivotGrid
Spreadsheet
Gauges
NumericUpDown
PanelBar
DateTimePicker
DataFilter
Menu
ContextMenu
TimeLine
Calendar
Installer and Visual Studio Extensions
ImageEditor
BusyIndicator
Expander
Slider
TileList
DataPager
PersistenceFramework
Styling
TimeBar
OutlookBar
TransitionControl
FileDialogs
Book
ToolBar
ColorPicker
TimePicker
MultiColumnComboBox
SyntaxEditor
VirtualGrid
NavigationView (Hamburger Menu)
Wizard
ExpressionEditor
WatermarkTextBox
DesktopAlert
BarCode
SpellChecker
DataServiceDataSource
EntityFrameworkDataSource
RadialMenu
ChartView3D
Data Virtualization
BreadCrumb
LayoutControl
ProgressBar
Sparkline
TabbedWindow
ToolTip
CloudUpload
ColorEditor
TreeMap and PivotMap
EntityFrameworkCoreDataSource (.Net Core)
HeatMap
Chat (Conversational UI)
VirtualizingWrapPanel
Calculator
NotifyIcon
TaskBoard
TimeSpanPicker
BulletGraph
Licensing
WebCam
CardView
DataBar
FilePathPicker
Callout
PasswordBox
SplashScreen
Localization
Rating
Accessibility
CollectionNavigator
AutoSuggestBox
Security
VirtualKeyboard
HighlightTextBlock
TouchManager
StepProgressBar
Badge
OfficeNavigationBar
ExpressionParser
CircularProgressBar
SvgImage
PipsPager
SlideView
AI Coding Assistant
+? more
Top users last month
Miljana
Top achievements
Rank 2
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Bronze
Cynthia
Top achievements
Rank 1
John
Top achievements
Rank 1
Iron
Mozart
Top achievements
Rank 1
Iron
Veteran
Want to show your ninja superpower to fellow developers?
Top users last month
Miljana
Top achievements
Rank 2
Iron
Iron
Joel
Top achievements
Rank 3
Bronze
Bronze
Bronze
Cynthia
Top achievements
Rank 1
John
Top achievements
Rank 1
Iron
Mozart
Top achievements
Rank 1
Iron
Veteran
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?