WPF Application and filters

Apr 13, 2011 at 1:47 PM


I'm interested in using the NodeXL class libraries within a WPF web application to do some basic import and export of data from relational databases, using the graph visualisation, metrics and filters for analysis.  In particular the dynamic filters in the Excel template would be useful - would I have to rewrite the filter code myself?  I can't see an interface for them in the API.

Thanks for any help,

Apr 13, 2011 at 4:18 PM
Edited Apr 13, 2011 at 4:19 PM


Yes, I'm afraid you would have to rewrite the dynamic filter code yourself.  The reason is that NodeXL's ExcelTemplate project makes heavy use of Excel's calculation engine to determine whether a given edge or vertex should be visible, based on hidden formulas that NodeXL inserts into the workbook.  These formulas, of which there can be hundreds or thousands, require rapid recalculation as the dynamic filter sliders are adjusted, and Excel, of course, excels at that kind of stuff.  I could have abstracted the filter functionality out of the ExcelTemplate project and into the class libraries, but that would have been far more difficult and I seriously doubt that I could have matched Excel's calculation performance doing it that way.

-- Tony

Apr 13, 2011 at 4:21 PM

As a side note, the dynamic filter technique I used in the ExcelTemplate project is documented in the DynamicFilterDialog.cs file in the NodeXL source code, available on the Downloads tab on CodePlex.

-- Tony

Apr 14, 2011 at 10:34 AM

Understood - that all makes sense to me;  no point reinventing to get a less efficient wheel. 

Thanks Tony for your advice.

Apr 14, 2011 at 10:50 AM

Thinking about it - is there away to grab the attributes from a filtered set of vertices inside Excel? I'm pretty sure the answer is no without modifying the NodeXL Excel template but would just like to check to make sure. 

Apr 14, 2011 at 4:58 PM

No, not without modifying the NodeXL Excel template.

-- Tony