BitSharp.Client.Helper.WpfRichTextBoxTarget.InitializeTarget C# (CSharp) 메소드

InitializeTarget() 보호된 메소드

protected InitializeTarget ( ) : void
리턴 void
        protected override void InitializeTarget()
        {
            TargetRichTextBox = TargetRichTextBox ?? System.Windows.Application.Current.MainWindow.FindName(ControlName) as System.Windows.Controls.RichTextBox;

            if (TargetRichTextBox != null) return;
            //this.TargetForm = FormHelper.CreateForm(this.FormName, this.Width, this.Height, false, this.ShowMinimized, this.ToolWindow);
            //this.CreatedForm = true;

            var openFormByName = System.Windows.Application.Current.Windows.Cast<Window>().FirstOrDefault(x => x.GetType().Name == FormName);
            if (openFormByName != null)
            {
                TargetForm = openFormByName;
                if (string.IsNullOrEmpty(ControlName))
                {
                    // throw new NLogConfigurationException("Rich text box control name must be specified for " + GetType().Name + ".");
                    Trace.WriteLine("Rich text box control name must be specified for " + GetType().Name + ".");
                }

                CreatedForm = false;
                TargetRichTextBox = TargetForm.FindName(ControlName) as System.Windows.Controls.RichTextBox;

                if (TargetRichTextBox == null)
                {
                    // throw new NLogConfigurationException("Rich text box control '" + ControlName + "' cannot be found on form '" + FormName + "'.");
                    Trace.WriteLine("Rich text box control '" + ControlName + "' cannot be found on form '" + FormName + "'.");
                }
            }

            if (TargetRichTextBox == null)
            {
                TargetForm = new Window
                {
                    Name = FormName,
                    Width = Width,
                    Height = Height,
                    WindowStyle = ToolWindow ? WindowStyle.ToolWindow : WindowStyle.None,
                    WindowState = ShowMinimized ? WindowState.Minimized : WindowState.Normal,
                    Title = "NLog Messages"
                };
                TargetForm.Show();

                TargetRichTextBox = new System.Windows.Controls.RichTextBox { Name = ControlName };
                var style = new Style(typeof(Paragraph));
                TargetRichTextBox.VerticalScrollBarVisibility = ScrollBarVisibility.Auto;
                style.Setters.Add(new Setter(Block.MarginProperty, new Thickness(0, 0, 0, 0)));
                TargetRichTextBox.Resources.Add(typeof(Paragraph), style);
                TargetForm.Content = TargetRichTextBox;

                CreatedForm = true;
            }
        }