Expressions in WPF Bindings using Essential Calculate | Syncfusion Blogs
Live Chat Icon For mobile
Live Chat Icon
Popular Categories.NET  (173).NET Core  (29).NET MAUI  (203)Angular  (107)ASP.NET  (51)ASP.NET Core  (82)ASP.NET MVC  (89)Azure  (40)Black Friday Deal  (1)Blazor  (211)BoldSign  (13)DocIO  (24)Essential JS 2  (106)Essential Studio  (200)File Formats  (65)Flutter  (132)JavaScript  (219)Microsoft  (118)PDF  (81)Python  (1)React  (98)Streamlit  (1)Succinctly series  (131)Syncfusion  (897)TypeScript  (33)Uno Platform  (3)UWP  (4)Vue  (45)Webinar  (50)Windows Forms  (61)WinUI  (68)WPF  (157)Xamarin  (161)XlsIO  (35)Other CategoriesBarcode  (5)BI  (29)Bold BI  (8)Bold Reports  (2)Build conference  (8)Business intelligence  (55)Button  (4)C#  (146)Chart  (127)Cloud  (15)Company  (443)Dashboard  (8)Data Science  (3)Data Validation  (8)DataGrid  (63)Development  (618)Doc  (8)DockingManager  (1)eBook  (99)Enterprise  (22)Entity Framework  (5)Essential Tools  (14)Excel  (39)Extensions  (22)File Manager  (6)Gantt  (18)Gauge  (12)Git  (5)Grid  (31)HTML  (13)Installer  (2)Knockout  (2)Language  (1)LINQPad  (1)Linux  (2)M-Commerce  (1)Metro Studio  (11)Mobile  (501)Mobile MVC  (9)OLAP server  (1)Open source  (1)Orubase  (12)Partners  (21)PDF viewer  (42)Performance  (12)PHP  (2)PivotGrid  (4)Predictive Analytics  (6)Report Server  (3)Reporting  (10)Reporting / Back Office  (11)Rich Text Editor  (12)Road Map  (12)Scheduler  (52)Security  (3)SfDataGrid  (9)Silverlight  (21)Sneak Peek  (31)Solution Services  (4)Spreadsheet  (11)SQL  (10)Stock Chart  (1)Surface  (4)Tablets  (5)Theme  (12)Tips and Tricks  (112)UI  (381)Uncategorized  (68)Unix  (2)User interface  (68)Visual State Manager  (2)Visual Studio  (31)Visual Studio Code  (17)Web  (582)What's new  (323)Windows 8  (19)Windows App  (2)Windows Phone  (15)Windows Phone 7  (9)WinRT  (26)

Expressions in WPF XAML Bindings using Essential Calculate

By now you are probably getting very used to setting up bindings in XAML and getting spoilt at it too! I am sure many of you frown when you have to write converters in code-behind just for a simple conversion. For example, let us say you want to simply show the sum of the value of two data sources in a text box (a simple “A + B” expression). There is no way to do this in XAML, so you end up writing a converter for it.

This got us thinking and wondering how to make use of our very powerful Calculation Engine in our library. I mean, it has all the logic built in to support parsing a whole bunch of formulas/expressions and wouldn’t it be great to somehow extend its capabilities to XAML.

That train of thought led us to create some simple converters that you can easily utilize in your applications to extend your binding code with Expressions!

Imagine you want to create a simple Product Purchase UI like this where one value depends on several other elements above it:

 

image

Product Purchase Form Simplified Using Expressions in Bindings

This would normally require converters in Binding expressions. But, let us see how we can totally avoid code-behind using Syncfusion’s built-in SingleVariableExpresssionConverter and MultipleVariableExpressionConverter.

Single Variable Expressions

Here is an example of how to define Single Variable Expressions:

In your Resources section:


The “Product Price” TextBox where you want to display the result of an expression like this ( * 30) could be defined like this:

Multi-Variable Expressions

Here is an example of how to define a Multi-Variable Expression:

In your Resources section:

            

The “Total Price” TextBox where you want to display the result of an expression like this ( + ) could be defined like this:

  
          
                    C
                    [a]+[b]
                    
                    
                
  

Expressions Support

The Calculation Engine’s support for operators and functions is VAST! Take a look at them all in the Calculation Engine’s Users Guide (browse to “Concepts and Features/Supported Algebra” and “Concepts and Features/Function Reference Section”) in the tree on the left.

Here is also a sample project that illustrates this scenario. This will work with Essential Studio 2010 Volume 2.

Tags:

Share this post:

Popular Now

Be the first to get updates

Subscribe RSS feed