Show/Hide RCDC attributes

Problem

You want to show/hide a specific attribute form in the FIM2010 RCDC in a supported state when a check box is checked/unchecked.

Background

I needed a way to show and hide attributes in the default FIM RCDC for Group Creation. The decision to show/hide had to be dependent on another attribute that the user checked/unchecked.

Image 206

Image 207

Solution

For this to work you have to use a Boolean attribute as the “controller”. In the picture above, “Automated Role Assignment” is a Boolean attribute. You also have to use the my:AutoPostback option on the controller. So:

Here is my RCDC for “Automated Role Assignment”:
The important thing here is my:AutoPostback=”true”

<my:Control my:Name="AutoRoleAssignment" my:TypeName="UocCheckBox" my:Caption="{Binding Source=schema, Path=AutoRoleAssignment.DisplayName}" my:Description="{Binding Source=schema, Path=AutoRoleAssignment.Description}" my:AutoPostback="true">
        <my:Properties>
          <my:Property my:Name="Checked" my:Value="{Binding Source=object, Path=AutoRoleAssignment, Mode=TwoWay}" />
        </my:Properties>
      </my:Control>

Depending on the status of “AutoRoleAssignment” checked or unchecked we show/hide the attribute “AssignedRole” using the my:visible option:
The important element here is my:Visible=”{Binding Source=object, Path=AutoRoleAssignment, Mode=TwoWay}

      <my:Control my:Name="AssignedRole" my:TypeName="UocIdentityPicker" my:Caption="{Binding Source=schema, Path=AssignedRole.DisplayName}" my:Description="{Binding Source=schema, Path=AssignedRole.Description}" my:Visible="{Binding Source=object, Path=AutoRoleAssignment, Mode=TwoWay}">
        <my:Properties>
          <my:Property my:Name="ObjectTypes" my:Value="Role" />
          <my:Property my:Name="UsageKeywords" my:Value="Roles, Role" />
          <my:Property my:Name="ResultObjectType" my:Value="Role" />
          <my:Property my:Name="Value" my:Value="{Binding Source=object, Path=AssignedRole, Mode=TwoWay}" />
        </my:Properties>
      </my:Control>

This should work for all attributes and even tabs. As long as you use a boolean attribute to control visibility.