Hello,
I am using NetAdvantage 2009 9.2 suite. I wanted to turn off animations in xamdatagrid so I followed this proposal. After I successfully implemented custom theme and removed all triggers firing on IsMouseOver property, removed unnecessary animation (storyboards), I still notice pretty high CPU utilization (between 60 and 80 percent) which is lower than before (between 70 and 90 percent on dual core processor!), but still unusually high. On test grid I am having around 200 rows, grouped by two text fields, bound to object data source.
I notice similar performance problems in your sample (with enabled animations), so I'm wondering what is still eating my CPU. There are no binding problems or any other problems with theme when I use it - Output window in Visual Studio indicates no problem at all.
I can build a sample with given theme so you can take a closer look if you want.
Sincerely,
AndrejH
Hello Andrej,
We would appreciate it if you provided us with a sample so that we can look into it and see if there is any problem.
Thank you.
Please find enclosed *.zip file with test project which exhibits above mentioned behavior.
Hi Alex,
We're facing the same CPU usage issues with xamdatagrid (NetAdvantage for WPF 2011.2). The CPU usage was initially going up to 30%-40% on xamdatagrid mouseover. After overriding some styles for CellValuePresenter and DataRecordCellArea, the CPU usage has come down to 11% but we need to eliminate this.
The CellValuePresenter and DataRecordCellArea styles being used are attached.
Please suggest.
I encountered the similar problem in our projects. Moving mouse slightly upon the datagrid, will make the CPU usage goes up to 30~40%, even more.
We are using the 9.1 suite. I'd like track this topic and hope for its updates.
Hello Alex,
I've installed latest service release, and I still experience above mentioned behavior. My environment consists of:
64-bit Vista SP24GB RAM, Intel Pentium Dual Core E2180 @ 2 GHz, Intel G33 Express
Is there any way to prevent grid from processing mouse events when hovering? I don't need drag&drop functionality, hence I don't need grid to respond when mouse is over. More than CPU utilization during mouse moving I am concerned about intensive scrolling. In my case somewhat faster scrolling is always twitching, when combined with grouping it becomes an issue - sometimes it takes almost a second for grid to respond - is there any official guidance on how to improve grid's performance?I am setting following properties on grid: SnapsToDevicePixels="True" GroupByAreaLocation="AboveDataArea" ScrollingMode="Deferred" AutoFit="True" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" DataSource="{Binding Data}" IsGroupByAreaExpanded="True" InitializeRecord="grid_InitializeRecord" RecordLoadMode="LoadOnDemand"In InitializeRecord event handler I set e.Record.IsExpanded = true. The "Data" source is an ObservableCollection of custom data classes - that doesn't seem to be an issue, though.
Andrej
Thank you for the sample. I got much reasonable results when I ran the sample. When I intensively hover over the XamDataGrid, the CPU usage goes up to 15%. When I start intensive scrolling, it goes up to 45-50%. What is the environment that you are working on so I can test this in the same setup as you ? I also notice that you are using the release versions of 9.2. You can test the sample with the latest service release.