Deliver superior customer experiences with an AI-driven platform for creating and deploying cognitive chatbots
Deliver Awesome UI with the most complete toolboxes for .NET, Web and Mobile development
Automate UI, load and performance testing for web, desktop and mobile
A complete cloud platform for an app or your entire digital business
Detect and predict anomalies by automating machine learning to achieve higher asset uptime and maximized yield
Automate decision processes with a no-code business rules engine
Optimize data integration with high-performance connectivity
Connect to any cloud or on-premises data source using a standard interface
Build engaging multi-channel web and digital experiences with intuitive web content management
Personalize and optimize the customer experience across digital touchpoints
Build, protect and deploy apps across any platform and mobile device
Rapidly develop, manage and deploy business apps, delivered as SaaS in the cloud
The content you're reading is getting on in years
This post is on the older side and its content may be out of date.
Be sure to visit our blogs homepage for our latest news, updates and information.
[This post is part of the developer's manual preview published on this blog. You can find temporary TOC here.]
With the new architecture ControlPanel is just another View (admittedly an important one due to its root place in the hierarchy of Views).
The nice thing about this new architecture is that you don’t need to worry how all this will happen or better to say you don’t need to care about the details. All you have to tell Sitefinity is that you would like to display a particular view and Sitefinity will do the rest of the less interesting work.
The central idea is that you are navigating through Views not by postback, but rather but navigating to a URL which specifies the particular View. Again, Sitefinity provides a handful of methods which abstract away from you the process of URL generation.
We are distinguishing two rudimentary types of methods:
For example, CreateCommand will return you a proper URL to navigate to a particular View, which you will generally use to assign the NavigateUrl property of HyperLink control. On the other hand, NavigateCommand will redirect user to a particular View. Navigate is generally used after some kind of operation has been completed (e.g. new blog post has been saved through postback) and you need to redirect user to a different view (e.g. blog post preview which displays the preview of just created blog post).
Imagine that you place “EDIT” link on the public BlogPosts control which is visible only to the logged in users. You can generate a correct link for each of these buttons that will take you to admin area and open the given post in edit mode. With the prior approach of postback driven UI generation this was, of course, impossible.
While it may appear obvious, it won’t hurt to mention that with this new approach you will obviously need to convert your LinkButton and Button controls which used to switch modes to HyperLink controls and assign them proper URLs. An example of such button is “Create new blog post”. Whereas before this button used to trigger postback and switch mode, now it will have to be replaced with hyperlink which navigate to a different View (namely PostNewView View).
View all posts from The Progress Guys on the Progress blog. Connect with us about all things application development and deployment, data integration and digital business.
Copyright © 2018 Progress Software Corporation and/or its subsidiaries or affiliates.
All Rights Reserved.
Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries. See Trademarks for appropriate markings.