public static Style CreateDayTileStyle(ThemeColor themeColor) { var style = new Style(); // Triggers style.Triggers.Add(new Trigger { Property = DayTile.IsSelectedProperty, Value = true, Setters = { new Setter(DayTile.PaddingProperty, new Thickness(1, 1, 0, 0)), new Setter(DayTile.BorderThicknessProperty, new Thickness(1, 1, 1, 1)), new Setter(DayTile.BorderBrushProperty, themeColor.SelectedBorder), }, }); style.Triggers.Add(new Trigger { Property = DayTile.IsTodayProperty, Value = true, Setters = { //new Setter(DayTile.PaddingProperty, new Thickness(1, 1, 0, 0)), //new Setter(DayTile.BorderThicknessProperty, new Thickness(1, 1, 1, 1)), //new Setter(DayTile.BorderBrushProperty, themeColor.SelectedBorder), new Setter(DayTile.FontWeightProperty, FontWeights.Bold), new Setter(DayTile.EffectProperty, MaterialDesign.Shadows.zDepth1), }, }); style.Triggers.Add(CreateDayTypeTrigger(DayType.Saturday, themeColor.SaturdayBackground, themeColor.SaturdayForeground)); style.Triggers.Add(CreateDayTypeTrigger(DayType.Sunday, themeColor.SundayBackground, themeColor.SundayForeground)); style.Triggers.Add(CreateDayTypeTrigger(DayType.SpecialLevel3, themeColor.SpecialLevel3Background, themeColor.SpecialLevel3Foreground)); style.Triggers.Add(CreateDayTypeTrigger(DayType.SpecialLevel2, themeColor.SpecialLevel2Background, themeColor.SpecialLevel2Foreground)); style.Triggers.Add(CreateDayTypeTrigger(DayType.SpecialLevel1, themeColor.SpecialLevel1Background, themeColor.SpecialLevel1Foreground)); style.Triggers.Add(new Trigger { Property = DayTile.IsMouseOverProperty, Value = true, Setters = { new Setter(DayTile.BackgroundProperty, themeColor.MouseOverBackground), }, }); style.Triggers.Add(CreateDayTypeTrigger(DayType.GrayedOut, themeColor.GrayedOutBackground, themeColor.GrayedOutForeground)); // Setters style.Setters.Add(new Setter(DayTile.PaddingProperty, new Thickness(2, 2, 0, 0))); style.Setters.Add(new Setter(DayTile.MarginProperty, new Thickness(0))); style.Setters.Add(new Setter(DayTile.BorderThicknessProperty, new Thickness(0, 0, 1, 1))); style.Setters.Add(new Setter(DayTile.BorderBrushProperty, themeColor.Border)); style.Setters.Add(new Setter(DayTile.BackgroundProperty, themeColor.NormalBackground)); style.Setters.Add(new Setter(DayTile.ForegroundProperty, themeColor.Foreground)); return(style); }
public Theme(ThemeColor themeColor, TextSize themeSize, TextAndShadow textAndShadow) { ThemeColor = themeColor ?? ThemeColors.Light; TextSize = themeSize ?? new TextSize(); TextAndShadow = textAndShadow; }