ASP.NET: Spreadsheet Control (What's new in 13.2)

ASP.NET Team Blog
25 November 2013

Wait, what? An ASP.NET Spreadsheet control? Yes, it's true, DevExpress are introducing a new web-based spreadsheet control that provides all the features you'd expect: fast, powerful, with a beautiful functional user experience. Your users will believe they're actually editing their Excel files in their browser.

Introducing Spreadsheet (Preview)

We're introducing the new DevExpress ASP.NET Spreadsheet control as a preview in 13.2. And because a picture is worth a thousand words, here's an image of it in action:

DevExpress ASP.NET Spreadsheet control

We're releasing it as a special preview edition. Why? Because it's a big ambitious control that we're still perfecting. However, the new ASP.NET Spreadsheet control has enough of a feature set that we'd love for you to test drive and give us your feedback.

The DevExpress ASP.NET Spreadsheet control is also known as the ASPxSpreadsheet control within Visual Studio and our documentation.

Features

The new ASP.NET Spreadsheet control ships with the following features:

Automatically Generated UI

This is, in my opinion, it's best feature. Easy as 1,2,3 (pun intended).
1: Drag and drop the control on to your form.
2. Add a line in the pageload to specifiy which excel file to edit.
3. Run and get an instantly beautiful and functional excel user interface.

Automated Formula Calculation Engine

Formulas are one of the most commonly used features of spreadsheets. With ASPxSpreadsheet, you can easily insert and calculate formulas just like Microsoft Excel.

A formula is a string expression that begins with an equal (=) sign and can contain constants, operators, cell references, functions, and names.

However, it is a preview version. This means that not every feature is supported yet. For example, touch for mobile devices is not yet supported. Rest assured, that when the control is released, touch and other key DevExpress ASP.NET control features will be supported.

Load, Save, & Open in Microsoft Excel

The new DevExpress ASP.NET Spreadsheet control is powerful. Just consider this workflow that the ASPxSpreadsheet control provides for an end-user:

  1. Load a Microsoft Excel file from your website.
  2. Modify it on your website.
  3. Save the changes and download it locally.
  4. Open and keep working in Microsoft Excel.

Built-in Spreadsheet Functions

The ASPxSpreadsheet's built-in functions cover a wide range of categories - from basic mathematical operations, such as simple addition and subtraction, to complex engineering and statistical calculations. This can meet even the most demanding requirements. The provided function categories include:

  • Financial
  • Statistical
  • Engineering
  • Logical
  • Text
  • Date & Time
  • Lookup & Reference
  • Math & Trig
  • Informational

The built-in functions are listed within the Formulas tab of the ASPxSpreadsheet's automatically generated Ribbon. In this tab, functions are divided into groups for easy access.

Cell References and Formatting

A formula can contain references to other cells or cell ranges within the same or different worksheets. The following references are supported:

  • Relative, Absolute and Mixed References
  • Cross-Worksheet References
  • 3D References
  • Structured References
  • External References

Data Merging

The DevExpress ASP.NET Spreadsheet control allows you merge data by using a spreadsheet template that is loaded into the ASPxSpreadsheet and programmatically populated with data taken from an xml file. The template presents the predefined report layout and contains specific aggregation formulas. The data is retrieved from an xml file and merged with the corresponding worksheet cells into an integrated report. As a result, a worksheet represents a complete report calculated automatically.

Charting

Charts are used in spreadsheets to make it easier to understand large quantities of data by visualizing the relationship between different data series.

The ASP.NET Spreadsheet allows you to easily insert a professional-looking chart that displays the details you want. A comprehensive set of 2D and 3D charts is provided to address a broad range of business needs with ease.

To create a chart, select a series of data within a worksheet and click on the required chart type within the user interface Ribbon's Insert tab. The data can be arranged in rows or columns - the ASP.NET Spreadsheet automatically determines the best way to plot the data on the chart. For plotting charts, the ASP.NET Spreadsheet uses the powerful charting functionality of the DevExpress ASP.NET Chart Control.

You can move a chart to any location on a worksheet by dragging the chart. You can also change the size of the chart for a better fit.

Pictures

The ASP.NET Spreadsheet allows you to insert pictures into a worksheet. Pictures might help you illustrate your data or decorate a data report with graphics.

Worksheet Management

The ASP.NET Spreadsheet allows you to populate a worksheet programmatically. The API of the IWorkbook object (accessed via the ASPxSpreadsheet.Document) is used to create data within cells and to perform the required calculations.

Large Excel Files Support

The ASP.NET Spreadsheet control provide Virtual Scrolling of the rows that let's you load a large excel file and easily navigate through it without making your user interface feel sluggish. And it provides this using the callbacks so your end-users won't experience full page refreshes. This feature is similar to the DevExpress ASPxGridView's Virtual Scrolling.

Responsive UI

The new ASP.NET Spreadsheet control is also responsive! This means that once you set the Width to 100%, then the Spreadsheet control will resize with your browser. And the Ribbon control inside of the Spreadsheet control will expand and collapse as necessary. Take a look at the new Ribbon control here.

ASP.NET MVC - Planned

ASP.NET MVC support is planned and will appear in a later major release.

A Great Ribbon UI Toolbar

Microsoft Excel makes great use of the Ribbon control. And because we've introduced the DevExpress ASP.NET Ribbon control, we've also incorporated this into the ASP.NET Spreadsheet control. This gives you the native look and feel of Microsoft Excel but with wide reach of the web because it can run on multiple browsers and it supports touch for mobile tablets too!

When only the best will do.

From interactive Desktop applications, to immersive Web and Mobile solutions, development tools built to meet your needs today and ensure your continued success tomorrow.

Get full access to a complete suite of professional components that let you instantly drop in new features, designer styles and fast performance for your applications.

Download a free and fully-functional version now: http://www.devexpress.com/Downloads/NET/

19 comment(s)
Luis E Flores Caballero
Luis E Flores Caballero

It looks awesome  what you guys have done.

What about copy and Paste support for multiple Cells?

do the control will support it?

thanks

25 November, 2013
Gosha
Gosha

insane :D

25 November, 2013
Vlаd
Vlаd

Cool! I was waiting for this control for two years!

26 November, 2013
Ian Pook
Ian Pook

This is a game changer for us....awesome! Mehul, any plans for an ASPxDocument control to do the same with Word files?

26 November, 2013
Pravin Taneja
Pravin Taneja

This is great! Very useful indeed.

Do you support a function to auto adjust row height after populating data in cell(s) and settings its Wrap property to true? We are currently using similar tool from competitor and found most of the matching code except this particular function that we use. There is no way for us to know how much height is needed to show entire text as its completely data driven.

26 November, 2013
Mehul Harry (DevExpress)
Mehul Harry (DevExpress)

Luis,

Thanks, yes, it will support Copy, Paste. Take a look a the Spreadsheet image and you'll see a section called "Clipboard" under the Home tab. This provides the Cut, copy, & paste functionality.

1. You can copy/paste content in browser when you are in edit mode.

2. You can copy/paste complex content (charts/images/several cells...) in the scope of the one work session (currently).

26 November, 2013
Mehul Harry (DevExpress)
Mehul Harry (DevExpress)

Ian,

Thanks! The current ASPxHtmlEditor control provides the capability to import and edit word doc files:

demos.devexpress.com/.../ImportExport.aspx

If you have other ideas, be sure to let us know and create a suggestion:

www.devexpress.com/.../CreateIssue.aspx

26 November, 2013
Mehul Harry (DevExpress)
Mehul Harry (DevExpress)

Pravin,

Yes!

The new DevExpress ASP.NET Spreadsheet control supports the ability to wrap long text in cells.

26 November, 2013
Ian Pook
Ian Pook

Hi Mehul.

Thanks for comments.....not experienced with HtmlEditor and Import/Export but it doesn't appear that it supports true word processing formatting (e.g. page headers/footers, table of contents, page layout (margins etc), page breaks and so on. The idea of ASPxDocument would be to allow us to provide built-in Office365-type functionality directly within our application! The ASPxSpreadsheet is half way, adding a word processing control completes the job!

I will add a suggestion if you think it worthwhile but would appreciate your comments before doing so.

Cheers.

27 November, 2013
Mehul Harry (DevExpress)
Mehul Harry (DevExpress)

Ian,

We designed the ASPxHtmlEditor for editing HTML. It does support import/export but you're correct in that it doesn't support the rich scenarios like a full Microsoft Word editor does.

Yes, add the suggestion and we'll disucss and consider it for a future version.

Thanks.

27 November, 2013
Rafael Nader
Rafael Nader

Cool! What about a MVC version?

Gratz!

5 December, 2013
Mehul Harry (DevExpress)
Mehul Harry (DevExpress)

Rafael,

ASP.NET MVC support is planned and will appear in a later major release.

6 December, 2013
Ketul Patel
Ketul Patel

@ Ian - Can't agree more. A word and spreadsheet viewer/editor in our web applications will set us apart.

Mehul I sincerely hope ASPxWord? (you already have a ASPxDocuemntViewer name taken) gets implemented. This would add a lot of value to Devexpress products - and add power to your developer's applications.

So also, how about ASPxPDF...

20 December, 2013
Adam Sinclair
Adam Sinclair

Hi Mehul, does the spreadsheet control allow you to right-click a cell and have a contextual menu with choices like Fill Right, Comment, etc?  If not, might that sort of thing be on the roadmap?

18 February, 2014
Mehul Harry (DevExpress)
Mehul Harry (DevExpress)

Adam,

The Preview version of the ASPxSpreadsheet has a context menu now that you can check out here:

demos.devexpress.com/.../Formulas.aspx

And, yes, we'll be adding more features to the final version. Stay tuned to learn what they are. :)

18 February, 2014
Jens Consoer
Jens Consoer

Dear Mehul,

the web spreadsheet control is really one of the best and useful components for business applications I have seen the last 10 years.

I have 3 questions:

1. When will it transform from CTP to production?

2. Will the handling of protected cells be part of the final release?

3. Will the handling of data validation be part of the final release?

4. Is it already possible to react on clientside events (e.g. cell_lost_focus) to deal with validations and similar issues on our own?

Thanks and best regards from Germany

Jens

30 April, 2014
Mehul Harry (DevExpress)
Mehul Harry (DevExpress)

Hi Jens,

1. In the upcoming 14.1 release.

2. No, but we have made a readonly mode for the whole the document.

3. Can you please describe in detail you data validation scenario please?

4. Yes, these new ClientSide API have been added to the upcoming release:

GetSelection()

       GetCellValue(colModelIndex, rowModelIndex)

       GetActiveCellValue()

   New client event:

       SelectionChanged

Thanks!

5 May, 2014
Mike Webster
Mike Webster

Hi Mehul,

I'm really amazed by this incredible tool.  Will there be other  client side API changes in 14.1?  I'm specifically looking for hiding and showing rows and columns and setting cell values.

Thanks,

Mike

8 May, 2014
Mehul Harry (DevExpress)
Mehul Harry (DevExpress)

Hi Mike,

Yes, please keep a look out for an upcoming blog post that I'm working about the 14.1 version of ASPxSpreadSheet. :)

9 May, 2014

Please login or register to post comments.