AvalonStudio.TextEditor.TextEditor.OnAttachedToVisualTree C# (CSharp) Method

OnAttachedToVisualTree() protected method

protected OnAttachedToVisualTree ( Avalonia.VisualTreeAttachmentEventArgs e ) : void
e Avalonia.VisualTreeAttachmentEventArgs
return void
        protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
        {
            var canScrollHorizontally = this.GetObservable(AcceptsReturnProperty)
                .Select(x => !x);


            var horizontalScrollBarVisibility = this.GetObservable(AcceptsReturnProperty)
                .Select(x => x ? ScrollBarVisibility.Auto : ScrollBarVisibility.Hidden);

            disposables.Add(Bind(
                ScrollViewer.HorizontalScrollBarVisibilityProperty,
                horizontalScrollBarVisibility,
                BindingPriority.Style));

            disposables.Add(TextDocumentProperty.Changed.Subscribe(_ => { SelectionStart = SelectionEnd = CaretIndex = -1; }));

            disposables.Add(this.GetObservable(OffsetProperty).Subscribe(_ =>
            {
                EditorScrolled?.Invoke(this, new EventArgs());
            }));

            disposables.Add(AddHandler(KeyDownEvent, OnKeyDown, RoutingStrategies.Bubble));            
        }