Blog

Custom Controls Framework - Solution Packager

The Solution Packager tool for Dynamics 365 has been around for a few years, and Microsoft has kept it updated as they released new features/solution component types. However, despite adding support for some of the new features found in V9, they have not yet added support for Custom Controls. This can be fixed pretty easily by creating a custom plugin for the tool.

Custom Controls Framework - Grids

So far, these posts have focused on field controls, but it's also possible to create grid controls. Grid controls are used to render the table of records on either views or sub-grids on forms. They are very similar to field controls, except that they take a data-set parameter which contains all the details about the rows, columns, filtering, sorting, etc. In this post, we'll create a grid control which renders the grid as a list of tiles.

Custom Controls Framework - Context

As mentioned in one of the previous posts, the Custom Controls Framework has a context object which gets passed around that contains a gold-mine of information. This post will explore some of the properties of the context object that jumped out at me, and provide a type definition file that can be used in your TypeScript development to get IntelliSense.

Custom Controls Framework - Styles

If you followed the previous posts, you should have a very basic control that let's you input a number and show it in a specified color if the value is below a threshold. Although the control is functional, it doesn't blend in with the out-of-the-box controls since it doesn't use the same styles. There are three different methods we can use to implement styles on custom controls, and we will explore those in this post.

Custom Controls Framework - Properties

This post will explore properties for controls built on the Custom Controls Framework. Properties represent values that can be configured, allowing the user to change how the control behaves in order to meet their needs. This post builds on the previous post, so be sure to check that one out first.