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.
As we discovered in last week’s post Customizing Sitefinity 4 Controls with the ViewMap, the ViewMap is a simple but powerful way to take control of your controls, allowing you to globally map all instances of those controls to a custom external template file.
The Sitefinity 4 SDK includes a zip file containing all of the templates used by the system. You can extract these from the default location of C:\Program Files (x86)\Telerik\Sitefinity 4.x\SDK\Content\Resources\WidgetTemplates.zip.
Use these as starting points for your external templates, modifying them as needed to fit the needs of your site.
Note: Although you can edit the markup in your custom templates as you see fit, be sure not to remove any of the actual server controls (labels, textboxes, etc.) as the will likely be required by the backing control.
Here’s a few more ideas for controls that you can customize with the ViewMap. Remember that these are global mappings, meaning that all instances of the control will now use your mapping.
We previously saw how you can map the HtmlField to change the Toolbox in the RadEditor. However, by mapping to an external template, you can set any property of the RadEditor.
For example, by changing the EditModes property, you can enable only the Html view for the editor.
The search box doesn’t currently offer a way to set the external template from the control designer itself. The ViewMap overcomes this and allows you to specify your own external template to layout the search box however you wish.
Mapping the various content widgets such as the Image allow you to add simple customizations to every instance of the widget on your site.
In this example, I’ve modified the Image control to wrap itself with a CSS class so that I can style all images consistently throughout the site with padding and a border.
By mapping the login control to a global template, you can easily customize it with a new layout and structure.
The great thing about mapping the pager is that it will globally configure ALL pager instances, regardless of the module (News, Events, etc) so that you can have a custom, yet consistent layout.
This is just a short collection of ideas to show examples of the ViewMap in action. Any templateable control in Sitefinity can be globally mapped to an external template with the ViewMap, allowing you to quickly and easily customize your controls.
Take a moment to download the Sitefinity SDK and extract the templates from the Resources folder to customize your own external templates. And be sure to share your experiences, comments, and suggestions with us in the Sitefinity SDK forum.
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.