Esempio n. 1
0
 /// <summary>
 /// For this StyleClass, merge in a StyleClass with a higher precedence
 /// </summary>
 /// <param name="moreRelevantStyleClass">The more relevant StyleClass</param>
 /// <param name="canOverwrite">Indicates whether styles of the same selector should override or be ignored</param>
 public void Merge(StyleClass moreRelevantStyleClass, bool canOverwrite)
 {
     foreach (var item in moreRelevantStyleClass.Attributes)
     {
         if (!Attributes.ContainsKey(item.Key))
         {
             Attributes.Add(item.Key, item.Value);
             continue;
         }
         if (item.Value.Contains("!important"))
         {
             Attributes[item.Key] = item.Value;
             continue;
         }
         if (canOverwrite)
         {
             if (Attributes[item.Key].Contains("!important") && !item.Value.Contains("!important"))
             {
                 continue;
             }
             Attributes[item.Key] = item.Value;
         }
     }
 }
Esempio n. 2
0
 public StyleClass(StyleClass sc)
 {
     Attributes = sc.Attributes.ToDictionary(kvp => kvp.Key, kvp => kvp.Value);
     Selector   = sc.Selector;
 }