private static UIElement CreateMessageBoxControlFunc(UIElement parent) { Grid screenBg = new Grid(); screenBg.HorizontalAlignment = HorizontalAlignment.Center; screenBg.ColumnDefinitions.Add(new ColumnDefinition() { Width = GridLength.Auto }); screenBg.SetBinding(Control.BackgroundProperty, new Binding(Control.BackgroundProperty) { Source = parent }); screenBg.Parent = parent; screenBg.Foreground = EmptyKeys.UserInterface.Media.Brushes.White; Grid grid = new Grid(); grid.Width = 260; grid.SetResourceReference(Control.BackgroundProperty, MapRenderResourceKey.MessageBoxBackgroundBrush); grid.ColumnDefinitions.Add(new ColumnDefinition()); grid.RowDefinitions.Add(new RowDefinition()); grid.RowDefinitions.Add(new RowDefinition()); screenBg.Children.Add(grid); Grid.SetColumn(grid, 0); Border border = new Border(); grid.Children.Add(border); Grid.SetRow(border, 0); ContentPresenter pnlTitle = CommonHelpers.CreateContentPresenter(parent, "Title"); pnlTitle.Height = 26; pnlTitle.Margin = new Thickness(0, 4, 0, 0); pnlTitle.HorizontalAlignment = HorizontalAlignment.Center; pnlTitle.VerticalAlignment = VerticalAlignment.Center; pnlTitle.IsHitTestVisible = false; pnlTitle.Name = "PART_WindowTitle"; border.Child = pnlTitle; ContentPresenter pnlContent = CommonHelpers.CreateContentPresenter(parent, "Content"); pnlContent.Margin = new Thickness(20, 8, 20, 0); pnlContent.Name = "PART_WindowContent"; grid.Children.Add(pnlContent); Grid.SetRow(pnlContent, 1); Window msgBox = parent as Window; if (msgBox != null) { msgBox.Visible += MsgBox_Visible; msgBox.SizeChanged += MsgBox_SizeChanged; var style = MapRenderButtonStyle.CreateMapRenderButtonStyle(); style.TargetType = typeof(Button); msgBox.Resources[typeof(Button)] = style; } return(screenBg); }
public static UIElement CreateControlTemplateCreateWindowUIElement(UIElement parent) { var border = new Border { Parent = parent, BorderThickness = new Thickness(1f) }; border.SetResourceReference(Control.BorderBrushProperty, CommonResourceKeys.WindowBorderBrushKey); var binding = new Binding("SnapsToDevicePixels") { Source = parent }; border.SetBinding(UIElement.SnapsToDevicePixelsProperty, binding); var binding2 = new Binding("Background") { Source = parent }; border.SetBinding(Control.BackgroundProperty, binding2); var grid = new Grid(); border.Child = grid; grid.ColumnDefinitions.Add(new ColumnDefinition()); grid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto }); grid.RowDefinitions.Add(new RowDefinition()); grid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto }); var border2 = new Border { Name = "PART_WindowTitleBorder" }; border2.SetResourceReference(Control.BackgroundProperty, CommonResourceKeys.WindowBorderBrushKey); grid.Children.Add(border2); var contentPresenter = CommonHelpers.CreateContentPresenter(parent, "Title"); contentPresenter.IsHitTestVisible = false; contentPresenter.Name = "PART_WindowTitle"; contentPresenter.Height = 22; contentPresenter.HorizontalAlignment = HorizontalAlignment.Center; contentPresenter.VerticalAlignment = VerticalAlignment.Center; contentPresenter.Margin = new Thickness(0f); border2.Child = contentPresenter; var scrollViewer = new ScrollViewer { Margin = new Thickness(4f), HorizontalContentAlignment = HorizontalAlignment.Stretch, VerticalContentAlignment = VerticalAlignment.Stretch, HorizontalScrollBarVisibility = ScrollBarVisibility.Disabled, VerticalScrollBarVisibility = ScrollBarVisibility.Disabled }; grid.Children.Add(scrollViewer); Grid.SetRow(scrollViewer, 1); var contentPresenter2 = CommonHelpers.CreateContentPresenter(parent, "Content"); contentPresenter2.Name = "PART_WindowContent"; scrollViewer.Content = contentPresenter2; var binding3 = new Binding("Width") { Source = parent }; contentPresenter2.SetBinding(UIElement.MaxWidthProperty, binding3); var binding4 = new Binding("Height") { Source = parent }; contentPresenter2.SetBinding(UIElement.MaxHeightProperty, binding4); var border3 = new Border { Name = "PART_WindowResizeBorder", Width = 8f, Height = 8f, HorizontalAlignment = HorizontalAlignment.Right, VerticalAlignment = VerticalAlignment.Bottom }; border3.SetResourceReference(Control.BackgroundProperty, CommonResourceKeys.WindowResizeThumbKey); //border3.SetResourceReference(Control.BackgroundProperty, CommonResourceKeys.AccentColorBrushKey); grid.Children.Add(border3); Grid.SetRow(border3, 1); return(border); }