Exemple #1
0
        private CreateStyleDictionaryFromDeclarationBlockResult <TDependencyProperty> CreateStyleDictionaryFromDeclarationBlock(
            List <CssNamespace> namespaces,
            StyleDeclarationBlock declarationBlock,
            Type matchedType,
            TDependencyObject dependencyObject)
        {
            var result = new CreateStyleDictionaryFromDeclarationBlockResult <TDependencyProperty>();

            foreach (var styleDeclaration in declarationBlock)
            {
                var property = cssTypeHelper.GetDependencyProperty(namespaces, matchedType, styleDeclaration.Property);

                if (property == null)
                {
                    continue;
                }

                try
                {
                    var propertyValue = cssTypeHelper.GetPropertyValue(matchedType, dependencyObject, styleDeclaration.Value, property, namespaces);

                    result.PropertyStyleValues[property] = propertyValue;
                }
                catch
                {
                    result.Errors.Add($"Cannot get property-value for '{styleDeclaration.Property}' with value '{styleDeclaration.Value}'!");
                }
            }

            return(result);
        }
Exemple #2
0
        private Dictionary <TDependencyProperty, object> CreateStyleDictionaryFromDeclarationBlock(
            List <CssNamespace> namespaces,
            StyleDeclarationBlock declarationBlock,
            Type matchedType,
            TDependencyObject dependencyObject)
        {
            var propertyStyleValues = new Dictionary <TDependencyProperty, object>();

            foreach (var styleDeclaration in declarationBlock)
            {
                var property = cssTypeHelper.GetDependencyProperty(namespaces, matchedType, styleDeclaration.Property);

                if (property == null)
                {
                    continue;
                }

                var propertyValue = cssTypeHelper.GetPropertyValue(matchedType, dependencyObject, styleDeclaration.Value, property);

                propertyStyleValues[property] = propertyValue;
            }

            return(propertyStyleValues);
        }