Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
315
Infragistics WPF Spreadsheet is high performance!
posted

I test four WPF spreadsheet controls with two docs.
  Four WPF spreadsheet controls:
    1. Devexpress WPF Spreadsheet (14.1 First Look Demo)
    2. Telerik  WPF Spreadsheet   (2014Q3 demo)
    3. ComponentOne WPF Spreadsheet (7.40.20141.0 Spread Designer)
    4. Infragistics WPF Spreadsheet (14.2 the following code)
 5. MS Excel 2013
  Two docs:
    1. dbenfachALL.xlsx(https://www.devexpress.com/Support/Center/Question/Details/Q571743)
    2. mydocument.xlsx document(https://www.devexpress.com/Support/Center/Question/Details/T156551)

===================================================================================================
1. dbenfachALL.xlsx test
When open doc, Devexpress is the fastest, Infragistics is a little slower, ComponentOne is very slow.
Telerik occurs error: "Cannot extract system color". MS Excel is faster.
When delete sheet one by one, Devexpress and MS Excel are fast, ComponentOne is also slow,
but Infragistics CRASHES!

2. mydocument.xlsx test
When open doc, Infragistics, ComponentOne are fast, Devexpress is very slow.
Telerik occurs error: "Cannot extract system color". MS Excel is very slow.
When delete sheet one by one, ComponentOne and Infragistics are fast,
Devexpress and MS Excel are also slow.

3. Both dbenfachALL.xlsx and mydocument.xlsx
Infragistics is fast.

===================================================================================================
Infragistics WPF Spreadsheet demo.

<Window
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation";
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml";
        xmlns:ig="http://schemas.infragistics.com/xaml"; x:Class="WpfApp.MainWindow"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
       
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>
       
        <Button Grid.Row="0" Click="ButtonBase_OnClick">Load</Button>

       <ig:XamSpreadsheet x:Name="spread" Grid.Row="1"/>

   </Grid>
</Window>

using System.IO;
using System.Windows;
using Infragistics.Documents.Excel;

namespace WpfApp
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
      
        public MainWindow()
        {
            InitializeComponent();
        }

       private void ButtonBase_OnClick(object sender, RoutedEventArgs e)
        {

           Stream stream = File.Open("mydocument.xlsx", FileMode.OpenOrCreate);
            Workbook wb = Workbook.Load(stream);
            if (wb != null)
            {
                this.spread.Workbook = wb;
            }
        }
    }
}