private void ToggleSortMode(object sender, RoutedEventArgs e) { StackPanel sp = SortModeButton.Content as StackPanel; if (sp == null) { return; } PackIconModern icon = (PackIconModern)sp.FindName("SortButtonIcon"); if (Model.NoteMenuContext.SortMode == "AZ") { Model.NoteMenuContext.SortMode = "ZA"; icon.Kind = PackIconModernKind.SortAlphabeticalDescending; } else if (Model.NoteMenuContext.SortMode == "ZA") { Model.NoteMenuContext.SortMode = "Index"; icon.Kind = PackIconModernKind.SortNumeric; } else if (Model.NoteMenuContext.SortMode == "Index") { Model.NoteMenuContext.SortMode = "AZ"; icon.Kind = PackIconModernKind.SortAlphabeticalAscending; } }
private StackPanel GenerateHeader(TreeItem item) { var textBlock = new TextBlock(); var textBinding = new Binding("DisplayText") { Source = item }; BindingOperations.SetBinding(textBlock, TextBlock.TextProperty, textBinding); var packIconModern = new PackIconModern { Margin = new Thickness(0, 0, 5, 0) }; var iconBinding = new Binding("Icon") { Source = item }; BindingOperations.SetBinding(packIconModern, PackIconModern.KindProperty, iconBinding); return(new StackPanel { Orientation = Orientation.Horizontal, Children = { packIconModern, textBlock } }); }
private void CreateMember() { sp = new StackPanel(); sp.Orientation = Orientation.Horizontal; icon = new PackIconModern() { Kind = PackIconModernKind.Connect, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; icon.Margin = new Thickness(2, 0, 3, 0); sp.Children.Add(icon); //Binding binding = new Binding("IsConnected"); //binding.Mode = BindingMode.OneWay; //binding.Source = this; //binding.Converter = new BooleanToVisibilityConverter(); //BindingOperations.SetBinding(icon,PackIconModern.VisibilityProperty, binding); icon.Visibility = Visibility.Hidden; tb = new TextBlock(); tb.Foreground = Brushes.Black; sp.Children.Add(tb); this.Header = sp; }
static void OnIconKindChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { ToolBoxItemControl ctrl = (ToolBoxItemControl)d; ctrl.Logger.MethodCalled(); ctrl.Logger.PropertyValue("IconUri", ctrl.IconUri); ctrl.Logger.PropertyValue("IconKind", ctrl.IconKind); if (string.IsNullOrEmpty(ctrl.IconUri) && ctrl.IconKind != null) { ctrl.Logger.Debug("IconUri is empty & IconKind is not null"); PackIconModern packIcon = (PackIconModern)ctrl.FindName("PackIcon"); if (packIcon != null) { packIcon.Visibility = Visibility.Visible; ctrl.Logger.Debug("PackIcon shown"); } Image icon = (Image)ctrl.FindName("ImageIcon"); if (icon != null) { icon.Visibility = Visibility.Collapsed; ctrl.Logger.Debug("ImageIcon shown"); } } else { ctrl.Logger.Debug("Either IconUri is not null or IconKind is null"); } }
public ServerListBoxItem() { this.HorizontalAlignment = HorizontalAlignment.Stretch; StackPanel sp = new StackPanel(); sp.Orientation = Orientation.Horizontal; icon = new PackIconModern() { Kind = PackIconModernKind.Connect, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; icon.Margin = new Thickness(2, 0, 3, 0); sp.Children.Add(icon); tb = new TextBlock(); //this.tb.Foreground = Brushes.Black; sp.Children.Add(tb); //this.Text = si.Name; this.Content = sp; }
public ApplicationViewInfo(ApplicationViewManager.Name name, PackIconModern packIconModern) { Name = name; TranslatedName = ApplicationViewManager.GetTranslatedNameByName(name); var canvas = new Canvas(); canvas.Children.Add(packIconModern); Icon = canvas; }
public SettingsViewInfo(SettingsViewManager.Name name, PackIconModern packIconModern, SettingsViewManager.Group group) { Name = name; TranslatedName = SettingsViewManager.TranslateName(name, group); Canvas canvas = new Canvas(); canvas.Children.Add(packIconModern); Icon = canvas; Group = group; TranslatedGroup = SettingsViewManager.TranslateGroup(group); }
public static void ApplyPackIcon(Control control, string packIconKey) { string packIconKind = packIconKey; object packIconControl = control.Template .FindName("PackIcon", control) as object; if (packIconControl is PackIconMaterial) { PackIconMaterial packIcon = (PackIconMaterial)packIconControl; packIcon.Kind = (PackIconMaterialKind)Enum .Parse(typeof(PackIconMaterialKind), packIconKind); } else if (packIconControl is PackIconMaterialLight) { PackIconMaterialLight packIconLight = (PackIconMaterialLight)packIconControl; packIconLight.Kind = (PackIconMaterialLightKind)Enum .Parse(typeof(PackIconMaterialLightKind), packIconKind); } else if (packIconControl is PackIconModern) { PackIconModern packIconModern = (PackIconModern)packIconControl; packIconModern.Kind = (PackIconModernKind)Enum .Parse(typeof(PackIconModernKind), packIconKind); } else if (packIconControl is PackIconOcticons) { PackIconOcticons packIconOcticons = (PackIconOcticons)packIconControl; packIconOcticons.Kind = (PackIconOcticonsKind)Enum .Parse(typeof(PackIconOcticonsKind), packIconKind); } else if (packIconControl is PackIconSimpleIcons) { PackIconSimpleIcons packIconSimple = (PackIconSimpleIcons)packIconControl; packIconSimple.Kind = (PackIconSimpleIconsKind)Enum .Parse(typeof(PackIconSimpleIconsKind), packIconKind); } else if (packIconControl is PackIconEntypo) { PackIconEntypo packIconSimple = (PackIconEntypo)packIconControl; packIconSimple.Kind = (PackIconEntypoKind)Enum .Parse(typeof(PackIconEntypoKind), packIconKind); } else if (packIconControl is PackIconFontAwesome) { PackIconFontAwesome packIconSimple = (PackIconFontAwesome)packIconControl; packIconSimple.Kind = (PackIconFontAwesomeKind)Enum .Parse(typeof(PackIconFontAwesomeKind), packIconKind); } }
static void OnIconUriChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { ToolBoxItemControl ctrl = (ToolBoxItemControl)d; ctrl.Logger.MethodCalled(); ctrl.Logger.PropertyValue("IconUri", ctrl.IconUri); ctrl.Logger.PropertyValue("IconKind", ctrl.IconKind); if (!string.IsNullOrEmpty(ctrl.IconUri)) { ctrl.Logger.Debug("IconUri contains value; PackIcon will be collapsed & ImageIcon will be shown"); PackIconModern packIcon = (PackIconModern)ctrl.FindName("PackIcon"); if (packIcon != null) { packIcon.Visibility = Visibility.Collapsed; ctrl.Logger.Debug("PackIcon collapsed"); } Image icon = (Image)ctrl.FindName("ImageIcon"); if (icon != null) { icon.Visibility = Visibility.Visible; ctrl.Logger.Debug("ImageIcon shown"); } } else { ctrl.Logger.Debug("IconUri is empty; ImageIcon will be collapsed & PackIcon will be shown"); PackIconModern packIcon = (PackIconModern)ctrl.FindName("PackIcon"); if (packIcon != null) { packIcon.Visibility = Visibility.Visible; ctrl.Logger.Debug("PackIcon shown"); } Image icon = (Image)ctrl.FindName("ImageIcon"); if (icon != null) { icon.Visibility = Visibility.Collapsed; ctrl.Logger.Debug("ImageIcon collapsed"); } } }
private void ButtonMute_Mute() { var stackPanel = new StackPanel() { Orientation = Orientation.Horizontal }; var packIconMaterial = new PackIconModern() { Kind = PackIconModernKind.SoundMute, Margin = new Thickness(4, 4, 2, 4), Width = 30, Height = 30, VerticalAlignment = VerticalAlignment.Center }; stackPanel.Children.Add(packIconMaterial); buttonMute.Content = stackPanel; }
protected override ImageSource CreateImageSource(object value, Brush foregroundBrush, double penThickness) { var packIcon = new PackIconModern { Kind = (PackIconModernKind)value }; var geometryDrawing = new GeometryDrawing { Geometry = Geometry.Parse(packIcon.Data), Brush = foregroundBrush, Pen = new Pen(foregroundBrush, penThickness) }; var drawingGroup = new DrawingGroup { Children = { geometryDrawing } }; return(new DrawingImage { Drawing = drawingGroup }); }
private void AddDebitPanel() { s1 = new StackPanel(); s1.Orientation = Orientation.Horizontal; //s.Margin = new Thickness(5, 0, 0, 0); TextBox t = new TextBox(); ComboBox c = new ComboBox(); Button b1 = new Button(); b1.Style = (Style)Application.Current.FindResource("PlusButtom"); var v = new PackIconModern() { Kind = PackIconModernKind.Minus, Height = 15, Width = 15, FontWeight = FontWeights.ExtraBold, Foreground = (SolidColorBrush)(new BrushConverter().ConvertFrom("#AEE71B")) }; b1.Content = v; b1.Click += B1_Click; c.ItemsSource = ((FinanceViewModel)DataContext).LedgerAccounts; c.DisplayMemberPath = "AccountName"; c.SelectedValuePath = "LedgerAccountId"; c.IsEditable = true; c.IsTextSearchEnabled = true; c.Text = "Select Account"; t.Width = 200; c.Width = 300; TextBoxHelper.SetWatermark(t, "Please Enter Debit Amount"); t.MinHeight = 35; c.Height = 35; t.KeyDown += textBox21_KeyDown; t.Margin = new Thickness(5); c.Margin = new Thickness(5); b1.Margin = new Thickness(5); s1.Children.Add(c); s1.Children.Add(t); s1.Children.Add(b1); xt1.Children.Add(s1); }
//public bool IsConnected { get { return SSHController.CheckConnection(serverinfo.ip, serverinfo.port); } } private void CreateMember() { list_total_serverinfo.Add(this); this.Orientation = Orientation.Horizontal; icon = new PackIconModern() { Kind = PackIconModernKind.Connect, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; icon.Margin = new Thickness(2, 0, 3, 0); this.Children.Add(icon); //Binding binding = new Binding("IsConnected"); //binding.Mode = BindingMode.OneWay; //binding.Source = this; //binding.Converter = new BooleanToVisibilityConverter(); //BindingOperations.SetBinding(icon,PackIconModern.VisibilityProperty, binding); icon.Visibility = Visibility.Hidden; tb = new TextBlock(); this.Children.Add(tb); }
public ConfigMenuTreeViewItem() { this.HorizontalAlignment = HorizontalAlignment.Stretch; grid = new Grid(); grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) }); DockPanel dp = new DockPanel(); grid.Children.Add(dp); Grid.SetColumn(dp, 0); icon = new PackIconModern() { Kind = PackIconModernKind.Connect, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; icon.Margin = new Thickness(2, 0, 3, 0); icon.Visibility = Visibility.Hidden; dp.Children.Add(icon); tb_title = new TextBlock(); tb_title.Foreground = Brushes.Black; dp.Children.Add(tb_title); grid.ColumnDefinitions.Add(new ColumnDefinition() { Width = new GridLength(1, GridUnitType.Star) }); tb_dir = new TextBlock(); tb_dir.Foreground = Brushes.Black; tb_dir.Margin = new Thickness(0, 0, 5, 0); tb_dir.Visibility = Visibility.Collapsed; grid.Children.Add(tb_dir); Grid.SetColumn(tb_dir, 1); this.Header = grid; this.AllowDrop = true; this.ContextMenu = new ContextMenu(); DelConfigWorkGroupCommand = new RelayCommand(DelConfigWorkGroup); DelConfigProcessCommand = new RelayCommand(DelConfigProcess); RequestEncryptionCommand = new RelayCommand(RequestEncryption); item_delGroupConfig = new MenuItem(); item_delGroupConfig.Command = DelConfigWorkGroupCommand; item_delGroupConfig.Header = "Del Config Work Group"; item_delGroupConfig.Icon = new PackIconMaterial() { Kind = PackIconMaterialKind.FolderRemove, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; item_delGroupConfig.Visibility = Visibility.Collapsed; this.ContextMenu.Items.Add(item_delGroupConfig); item_delConfig = new MenuItem(); item_delConfig.Command = DelConfigProcessCommand; item_delConfig.Header = "Del Config"; item_delConfig.Icon = new PackIconMaterial() { Kind = PackIconMaterialKind.FolderRemove, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; item_delConfig.Visibility = Visibility.Collapsed; this.ContextMenu.Items.Add(item_delConfig); strEnc = "암호화"; cofileEnc = "-e"; item_encrypt = new MenuItem(); item_encrypt.Command = RequestEncryptionCommand; item_encrypt.Header = "Encrypt"; item_encrypt.Icon = new PackIconMaterial() { Kind = PackIconMaterialKind.Lock, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; item_encrypt.Visibility = Visibility.Collapsed; this.ContextMenu.Items.Add(item_encrypt); strEnc = "복호화"; cofileEnc = "-d"; item_decrypt = new MenuItem(); item_decrypt.Command = RequestEncryptionCommand; item_decrypt.Header = "Decrypt"; item_decrypt.Icon = new PackIconMaterial() { Kind = PackIconMaterialKind.Lock, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center }; item_decrypt.Visibility = Visibility.Collapsed; this.ContextMenu.Items.Add(item_decrypt); }
public CoreMenuItem(Codon codon, object caller, IReadOnlyCollection <ICondition> conditions) { this.codon = codon; this.caller = caller; this.conditions = conditions; if (codon.Properties.Contains("template")) { this.Template = Application.Current.FindResource("MenuItemTemplateKey") as ControlTemplate; this.ApplyTemplate(); } else { if (codon.Properties.Contains("packIconKey")) { string[] packIconValues = codon.Properties["packIconKey"].Split(';'); string packIconType = packIconValues[0]; string packIconKind = packIconValues[1]; //object icon = null; switch (packIconType) { case "PackIconMaterial": var icon = new PackIconMaterial(); ((PackIconMaterial)icon).Kind = (PackIconMaterialKind)Enum .Parse(typeof(PackIconMaterialKind), packIconKind); this.Icon = icon; break; case "PackIconMaterialLight": var icon1 = new PackIconMaterialLight(); ((PackIconMaterialLight)icon1).Kind = (PackIconMaterialLightKind)Enum .Parse(typeof(PackIconMaterialLightKind), packIconKind); this.Icon = icon1; break; case "PackIconModern": var icon2 = new PackIconModern(); ((PackIconModern)icon2).Kind = (PackIconModernKind)Enum .Parse(typeof(PackIconModernKind), packIconKind); this.Icon = icon2; break; case "PackIconOcticons": var icon3 = new PackIconOcticons(); ((PackIconOcticons)icon3).Kind = (PackIconOcticonsKind)Enum .Parse(typeof(PackIconOcticonsKind), packIconKind); this.Icon = icon3; break; case "PackIconSimpleIcons": var icon4 = new PackIconSimpleIcons(); ((PackIconSimpleIcons)icon4).Kind = (PackIconSimpleIconsKind)Enum .Parse(typeof(PackIconSimpleIconsKind), packIconKind); this.Icon = icon4; break; case "PackIconEntypo": var icon5 = new PackIconEntypo(); ((PackIconEntypo)icon5).Kind = (PackIconEntypoKind)Enum .Parse(typeof(PackIconEntypoKind), packIconKind); this.Icon = icon5; break; case "PackIconFontAwesome": var icon6 = new PackIconFontAwesome(); ((PackIconFontAwesome)icon6).Kind = (PackIconFontAwesomeKind)Enum .Parse(typeof(PackIconFontAwesomeKind), packIconKind); this.Icon = icon6; break; } //this.Icon = icon; } else { if (codon.Properties.Contains("icon")) { try { var image = new Image(); image.Source = PresentationResourceService.GetBitmapSource(codon.Properties["icon"]); image.Height = 16; this.Icon = image; } catch (ResourceNotFoundException) {} } } } if (codon.Properties.Contains("style")) { Style customStyle = Application.Current.TryFindResource("MenuItemStyleKey") as Style; if (customStyle != null) { this.Style = customStyle; this.UpdateLayout(); } } else { //if (codon.Properties.Contains("packIconKey")) { //Apply material theme if PackIcon theme is used Style matStyle = Application.Current.TryFindResource("MaterialDesignMenuItem") as Style; if (matStyle != null) { this.Style = matStyle; } //} } UpdateText(); }
private async Task AddSubscriptionPanel(Subscription sub) { var channel = await sub.GetChannel(); _ = Dispatcher.InvokeAsync(() => { int row = SubscriptionsGrid.RowDefinitions.Count; RowDefinition rowDefinition = new RowDefinition { Height = GridLength.Auto, }; SubscriptionsGrid.RowDefinitions.Add(rowDefinition); Image logo = new Image { MaxWidth = 120, MaxHeight = 120, Width = 98, Height = 98, Margin = new Thickness(2), Source = new BitmapImage(new Uri(channel.LogoUrl)), VerticalAlignment = VerticalAlignment.Top }; Grid.SetColumn(logo, 0); Grid.SetRow(logo, row); SubscriptionsGrid.Children.Add(logo); TextBlock description = new TextBlock { Height = 40, Width = double.NaN, FontSize = 14, VerticalAlignment = VerticalAlignment.Top }; description.Inlines.Add(string.Concat(FindResource("PlaylistTitle"), channel.Title, "\n")); description.Inlines.Add(string.Concat(FindResource("LastVideoDownloadDate"), sub.LatestVideoDownloaded.ToLocalTime().ToShortDateString())); Grid.SetColumn(description, 1); Grid.SetRow(description, row); SubscriptionsGrid.Children.Add(description); StackPanel buttonsPanel = new StackPanel { VerticalAlignment = VerticalAlignment.Center }; Grid.SetColumn(buttonsPanel, 2); Grid.SetRow(buttonsPanel, row); SubscriptionsGrid.Children.Add(buttonsPanel); Tile settingsButton = new Tile { Height = double.NaN, Width = double.NaN, Margin = new Thickness(2.5), HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center }, removeButton = new Tile { Height = double.NaN, Width = double.NaN, Margin = new Thickness(2.5), HorizontalAlignment = HorizontalAlignment.Center, VerticalAlignment = VerticalAlignment.Center }; removeButton.Click += (s, e) => { rowDefinition.Height = new GridLength(0); Subscriptions.Remove(Subscriptions.FirstOrDefault(x => x.ChannelId.Equals(sub.ChannelId))); }; settingsButton.Click += (s, e) => { GlobalConsts.LoadFlyoutPage(new SubscriptionSettings(sub)); }; buttonsPanel.Children.Add(settingsButton); buttonsPanel.Children.Add(removeButton); WrapPanel settingsButtonWrapPanel = new WrapPanel(), removeButtonWrapPanel = new WrapPanel(); //Settings button PackIconModern settingsButtonIcon = new PackIconModern { Kind = PackIconModernKind.Cogs, Width = 35, Height = 35, Margin = new Thickness(5) }; TextBlock settingsButtonTextBlock = new TextBlock { Text = $"{FindResource("Settings")}", VerticalAlignment = VerticalAlignment.Center, FontSize = 16, Margin = new Thickness(2.5, 5, 7.5, 5) }; settingsButtonWrapPanel.Children.Add(settingsButtonIcon); settingsButtonWrapPanel.Children.Add(settingsButtonTextBlock); settingsButton.Content = settingsButtonWrapPanel; //Remove button PackIconModern removeButtonIcon = new PackIconModern { Kind = PackIconModernKind.Close, Width = 35, Height = 35, Margin = new Thickness(5) }; TextBlock removeButtonTextBlock = new TextBlock { Text = $"{FindResource("Remove")}", VerticalAlignment = VerticalAlignment.Center, FontSize = 16, Margin = new Thickness(2.5, 5, 7.5, 5) }; removeButtonWrapPanel.Children.Add(removeButtonIcon); removeButtonWrapPanel.Children.Add(removeButtonTextBlock); removeButton.Content = removeButtonWrapPanel; GridScrollViewer.Height = GlobalConsts.Current.ActualHeight - 300; GridScrollViewer.UpdateLayout(); }); }
/// <summary> /// nuget套件 MahApps.Metro.IconPacks /// 三种雪花样式,下降加旋转动画 /// </summary> /// <param name="panel"></param> void StartSnowing(Canvas panel) { Random random = new Random(); Task.Factory.StartNew(new Action(() => { for (int j = 0; j < 25; j++) { Thread.Sleep(j * 100); Dispatcher.Invoke(new Action(() => { int snowCount = random.Next(0, 10); for (int i = 0; i < snowCount; i++) { int width = random.Next(10, 20); PackIconBase pack = null; int snowType = random.Next(3); //三种雪花 switch (snowType) { case 0: pack = new PackIconFontAwesome() { Kind = PackIconFontAwesomeKind.SnowflakeRegular }; break; case 1: pack = new PackIconMaterial() { Kind = PackIconMaterialKind.Snowflake }; break; case 2: pack = new PackIconModern() { Kind = PackIconModernKind.Snowflake }; break; default: break; } pack.Width = width; pack.Height = width; pack.Foreground = Brushes.White; pack.BorderThickness = new Thickness(0); pack.RenderTransform = new RotateTransform(); int left = random.Next(0, (int)panel.ActualWidth); Canvas.SetLeft(pack, left); panel.Children.Add(pack); int seconds = random.Next(20, 30); DoubleAnimationUsingPath doubleAnimation = new DoubleAnimationUsingPath() //下降动画 { Duration = new Duration(new TimeSpan(0, 0, seconds)), RepeatBehavior = RepeatBehavior.Forever, PathGeometry = new PathGeometry(new List <PathFigure>() { new PathFigure(new Point(left, 0), new List <PathSegment>() { new LineSegment(new Point(left, panel.ActualHeight), false) }, false) }), Source = PathAnimationSource.Y }; pack.BeginAnimation(Canvas.TopProperty, doubleAnimation); DoubleAnimation doubleAnimation1 = new DoubleAnimation(360, new Duration(new TimeSpan(0, 0, 10))) //旋转动画 { RepeatBehavior = RepeatBehavior.Forever, }; pack.RenderTransform.BeginAnimation(RotateTransform.AngleProperty, doubleAnimation1); } })); } })); }
public TreeNode() { panel.Orientation = Orientation.Horizontal; panel.Children.Add(viewbox); panel.Children.Add(textLabelCtl); panel.Children.Add(textBoxCtl); if (this.IconPath != null) { if (this.IconPath.Contains(";")) { string[] packIconValues = IconPath.Split(';'); string packIconType = packIconValues[0]; string packIconKind = packIconValues[1]; switch (packIconType) { case "PackIconMaterial": PackIconMaterial iconMat = new PackIconMaterial(); ((PackIconMaterial)iconMat).Kind = (PackIconMaterialKind)Enum .Parse(typeof(PackIconMaterialKind), packIconKind); viewbox.Child = iconMat; break; case "PackIconMaterialLight": PackIconMaterialLight iconMatLight = new PackIconMaterialLight(); ((PackIconMaterialLight)iconMatLight).Kind = (PackIconMaterialLightKind)Enum .Parse(typeof(PackIconMaterialLightKind), packIconKind); viewbox.Child = iconMatLight; break; case "PackIconModern": PackIconModern iconModern = new PackIconModern(); ((PackIconModern)iconModern).Kind = (PackIconModernKind)Enum .Parse(typeof(PackIconModernKind), packIconKind); viewbox.Child = iconModern; break; case "PackIconOcticons": PackIconOcticons iconOcti = new PackIconOcticons(); ((PackIconOcticons)iconOcti).Kind = (PackIconOcticonsKind)Enum .Parse(typeof(PackIconOcticonsKind), packIconKind); viewbox.Child = iconOcti; break; case "PackIconSimpleIcons": PackIconSimpleIcons iconSimple = new PackIconSimpleIcons(); ((PackIconSimpleIcons)iconSimple).Kind = (PackIconSimpleIconsKind)Enum .Parse(typeof(PackIconSimpleIconsKind), packIconKind); viewbox.Child = iconSimple; break; case "PackIconEntypo": PackIconEntypo iconEnt = new PackIconEntypo(); ((PackIconEntypo)iconEnt).Kind = (PackIconEntypoKind)Enum .Parse(typeof(PackIconEntypoKind), packIconKind); viewbox.Child = iconEnt; break; case "PackIconFontAwesome": PackIconFontAwesome icon = new PackIconFontAwesome(); ((PackIconFontAwesome)icon).Kind = (PackIconFontAwesomeKind)Enum .Parse(typeof(PackIconFontAwesomeKind), packIconKind); viewbox.Child = icon; break; } viewbox.Margin = new Thickness(0, 0, 8, 0); } } Style materialDesignTreeViewItem = Application.Current.TryFindResource("MaterialDesignTreeViewItem") as Style; if (materialDesignTreeViewItem != null) { this.Style = materialDesignTreeViewItem; } Style materialDesignTextbox = Application.Current.TryFindResource("MaterialDesignFloatingHintTextBox") as Style; if (materialDesignTextbox != null) { textBoxCtl.Style = materialDesignTextbox; HintAssist.SetHint(this, "(" + HintText + ")"); } this.Header = panel; textBoxCtl.Visibility = Visibility.Collapsed; textBoxCtl.LostFocus += textBox_LostFocus; textBoxCtl.IsVisibleChanged += textBox_IsVisibleChanged; textBoxCtl.KeyDown += textBox_KeyDown; textLabelCtl.MouseLeftButtonDown += text_MouseLeftButtonDown; textLabelCtl.KeyDown += text_KeyDown; }
public static void CreateTemplatedToolBarItem(Control control, Codon codon) { if (codon.Properties.Contains("template")) { ControlTemplate customTemplate = (ControlTemplate)Application .Current .TryFindResource(codon.Properties["template"]); if (customTemplate != null) { control.Template = customTemplate; control.ApplyTemplate(); } } else { if (codon.Properties.Contains("packIconKey")) { string[] packIconValues = codon.Properties["packIconKey"].Split(';'); string packIconType = packIconValues[0]; string packIconKind = packIconValues[1]; //PackIconBase icon = null; object Icon = null; switch (packIconType) { case "PackIconMaterial": var icon = new PackIconMaterial(); ((PackIconMaterial)icon).Kind = (PackIconMaterialKind)Enum .Parse(typeof(PackIconMaterialKind), packIconKind); Icon = icon; break; case "PackIconMaterialLight": var icon1 = new PackIconMaterialLight(); ((PackIconMaterialLight)icon1).Kind = (PackIconMaterialLightKind)Enum .Parse(typeof(PackIconMaterialLightKind), packIconKind); Icon = icon1; break; case "PackIconModern": var icon2 = new PackIconModern(); ((PackIconModern)icon2).Kind = (PackIconModernKind)Enum .Parse(typeof(PackIconModernKind), packIconKind); Icon = icon2; break; case "PackIconOcticons": var icon3 = new PackIconOcticons(); ((PackIconOcticons)icon3).Kind = (PackIconOcticonsKind)Enum .Parse(typeof(PackIconOcticonsKind), packIconKind); Icon = icon3; break; case "PackIconSimpleIcons": var icon4 = new PackIconSimpleIcons(); ((PackIconSimpleIcons)icon4).Kind = (PackIconSimpleIconsKind)Enum .Parse(typeof(PackIconSimpleIconsKind), packIconKind); Icon = icon4; break; case "PackIconEntypo": var icon5 = new PackIconEntypo(); ((PackIconEntypo)icon5).Kind = (PackIconEntypoKind)Enum .Parse(typeof(PackIconEntypoKind), packIconKind); Icon = icon5; break; case "PackIconFontAwesome": var icon6 = new PackIconFontAwesome(); ((PackIconFontAwesome)icon6).Kind = (PackIconFontAwesomeKind)Enum .Parse(typeof(PackIconFontAwesomeKind), packIconKind); Icon = icon6; break; } if (control is MenuItem) { (control as MenuItem).Header = Icon; } else if (control is MahApps.Metro.Controls.DropDownButton) { (control as MahApps.Metro.Controls.DropDownButton).Content = Icon; } else if (control is MahApps.Metro.Controls.SplitButton) { (control as MahApps.Metro.Controls.SplitButton).Icon = Icon; } else { (control as ContentControl).Content = Icon; } } if (codon.Properties.Contains("icon")) { Image image = new Image(); image.Source = PresentationResourceService.GetBitmapSource(StringParser.Parse(codon.Properties["icon"])); image.Height = 16; image.SetResourceReference(FrameworkElement.StyleProperty, ToolBarService.ImageStyleKey); if (control is MenuItem) { (control as MenuItem).Header = image; } else if (control is MahApps.Metro.Controls.DropDownButton) { (control as MahApps.Metro.Controls.DropDownButton).Content = image; } else if (control is MahApps.Metro.Controls.SplitButton) { (control as MahApps.Metro.Controls.SplitButton).Icon = image; } else { (control as ContentControl).Content = image; } } if (codon.Properties.Contains("label")) { Label label = new Label(); label.Content = StringParser.Parse(codon.Properties["label"]); label.Padding = new Thickness(0); label.VerticalContentAlignment = VerticalAlignment.Center; if (control is MenuItem) { (control as MenuItem).Header = label; } else if (control is MahApps.Metro.Controls.DropDownButton) { (control as MahApps.Metro.Controls.DropDownButton).Content = label; } else if (control is MahApps.Metro.Controls.SplitButton) { (control as MahApps.Metro.Controls.SplitButton).Icon = label; } else { (control as ContentControl).Content = label; } } } if (codon.Properties.Contains("style")) { Style customStyle = Application.Current.TryFindResource(codon.Properties["style"]) as Style; if (customStyle != null) { control.Style = customStyle; } } else { if (control is MenuItem) { Style menuStyle = Application.Current.TryFindResource("MaterialDesignMenuItem") as Style; if (menuStyle != null) { control.Style = menuStyle; } } else if (control is MahApps.Metro.Controls.DropDownButton) { Style btnStyle = new Style(); Setter fg = new Setter(); Setter bg = new Setter(); // Style btnStyle = Application.Current.TryFindResource("MaterialDesignToolForegroundButton") as Style; bg.Property = MahApps.Metro.Controls.DropDownButton.BackgroundProperty; bg.Value = (Brush)Application.Current.TryFindResource("MaterialDesignPaper"); fg.Property = MahApps.Metro.Controls.DropDownButton.ForegroundProperty; fg.Value = (Brush)Application.Current.TryFindResource("MaterialDesignBody"); btnStyle.Setters.Add(bg); btnStyle.Setters.Add(fg); if (btnStyle != null) { (control as MahApps.Metro.Controls.DropDownButton).ButtonStyle = btnStyle; } Style menuStyle = Application.Current.TryFindResource("MaterialDesignContextMenu") as Style; if (menuStyle != null) { (control as MahApps.Metro.Controls.DropDownButton).MenuStyle = menuStyle; } } else if (control is MahApps.Metro.Controls.SplitButton) { Style lbStyle = Application.Current.TryFindResource("MaterialDesignListBox") as Style; if (lbStyle != null) { (control as MahApps.Metro.Controls.SplitButton).ListBoxStyle = lbStyle; } } else { TryApplyMaterialStyle((control as ContentControl)); } } control.ApplyTemplate(); }