private void FillBuildableProperties(KeyedDescription description, object userInterfaceInstance)
        {
            var reservedPropertyNames = new[] { "Key", "Properties", "NotFor", "OnlyFor" };

            var buildableProperties = from p in description.GetType().GetProperties()
                                      where !reservedPropertyNames.Contains(p.Name)
                                      select p;

            foreach (var buildablePropertyInfo in buildableProperties)
            {
                FillBuildableProperty(description, userInterfaceInstance, buildablePropertyInfo);
            }
        }