private void SetTextContentAdapter() { contentAdapter = IsPassword ? (ITextContenttAdapter) new PasswordBoxAdapter() : new TextBoxAdapter(); contentAdapter.TextChanged += (sender, e) => this.Text = contentAdapter.Text; contentAdapter.CaretIndexChanged += (sender, e) => this.CaretIndex = contentAdapter.CaretIndex; contentAdapter.SelectionStartChanged += (sender, e) => this.SelectionStart = contentAdapter.SelectionStart; contentAdapter.SelectionLengthChanged += (sender, e) => this.SelectionLength = contentAdapter.SelectionLength; contentAdapter.Control.AddHandler(wpf::System.Windows.Input.Mouse.QueryCursorEvent, (wpf::System.Windows.Input.QueryCursorEventHandler)((sender, e) => { e.Cursor = wpf::System.Windows.Input.Cursors.Arrow; e.Handled = false; }), true); SetContentBounds(); contentAdapter.Text = Text; contentAdapter.Control.SetValue(wpf::System.Windows.Controls.TextBox.MaxLengthProperty, MaxLength); contentAdapter.CaretIndex = CaretIndex; contentAdapter.SelectionStart = SelectionStart; contentAdapter.SelectionLength = SelectionLength; contentAdapter.Control.SetValue(wpf::System.Windows.Controls.TextBox.AcceptsReturnProperty, AcceptsReturn); contentAdapter.Control.SetValue(wpf::System.Windows.Controls.TextBox.AcceptsTabProperty, AcceptsTab); contentAdapter.IsReadOnly = IsReadOnly; contentAdapter.Control.SetValue(wpf::System.Windows.Controls.SpellCheck.IsEnabledProperty, SpellCheck); contentAdapter.Control.SetValue(wpf::System.Windows.Documents.Block.TextAlignmentProperty, converter.Convert(TextAlignment)); contentAdapter.Control.Foreground = converter.Convert(Foreground); contentAdapter.Control.FontFamily = converter.Convert(FontFamily); contentAdapter.Control.FontSize = FontSize; contentAdapter.Control.FontStyle = converter.Convert(FontStyle); contentAdapter.Control.FontStretch = converter.Convert(FontStretch); contentAdapter.Control.FontWeight = converter.Convert(FontWeight); contentAdapter.Control.IsHitTestVisible = IsHitTestVisible; contentAdapter.Control.SetValue(wpf::System.Windows.Controls.TextBlock.TextWrappingProperty, converter.Convert(TextWrapping)); contentAdapter.Control.SetValue(wpf::System.Windows.Controls.ScrollViewer.HorizontalScrollBarVisibilityProperty, converter.Convert(HorizontalScrollBarVisibility)); contentAdapter.Control.SetValue(wpf::System.Windows.Controls.ScrollViewer.VerticalScrollBarVisibilityProperty, converter.Convert(VerticalScrollBarVisibility)); }
private void SetTextContentAdapter() { contentAdapter = IsPassword ? (ITextContenttAdapter)new PasswordBoxAdapter() : new TextBoxAdapter(); contentAdapter.TextChanged += (sender, e) => this.Text = contentAdapter.Text; contentAdapter.CaretIndexChanged += (sender, e) => this.CaretIndex = contentAdapter.CaretIndex; contentAdapter.SelectionStartChanged += (sender, e) => this.SelectionStart = contentAdapter.SelectionStart; contentAdapter.SelectionLengthChanged += (sender, e) => this.SelectionLength = contentAdapter.SelectionLength; contentAdapter.Control.AddHandler(wpf::System.Windows.Input.Mouse.QueryCursorEvent, (wpf::System.Windows.Input.QueryCursorEventHandler)((sender, e) => { e.Cursor = wpf::System.Windows.Input.Cursors.Arrow; e.Handled = false; }), true); SetContentBounds(); contentAdapter.Text = Text; contentAdapter.Control.SetValue(wpf::System.Windows.Controls.TextBox.MaxLengthProperty, MaxLength); contentAdapter.CaretIndex = CaretIndex; contentAdapter.SelectionStart = SelectionStart; contentAdapter.SelectionLength = SelectionLength; contentAdapter.Control.SetValue(wpf::System.Windows.Controls.TextBox.AcceptsReturnProperty, AcceptsReturn); contentAdapter.Control.SetValue(wpf::System.Windows.Controls.TextBox.AcceptsTabProperty, AcceptsTab); contentAdapter.IsReadOnly = IsReadOnly; contentAdapter.Control.SetValue(wpf::System.Windows.Controls.SpellCheck.IsEnabledProperty, SpellCheck); contentAdapter.Control.SetValue(wpf::System.Windows.Documents.Block.TextAlignmentProperty, converter.Convert(TextAlignment)); contentAdapter.Control.Foreground = converter.Convert(Foreground); contentAdapter.Control.FontFamily = converter.Convert(FontFamily); contentAdapter.Control.FontSize = FontSize; contentAdapter.Control.FontStyle = converter.Convert(FontStyle); contentAdapter.Control.FontStretch = converter.Convert(FontStretch); contentAdapter.Control.FontWeight = converter.Convert(FontWeight); contentAdapter.Control.IsHitTestVisible = IsHitTestVisible; contentAdapter.Control.SetValue(wpf::System.Windows.Controls.TextBlock.TextWrappingProperty, converter.Convert(TextWrapping)); contentAdapter.Control.SetValue(wpf::System.Windows.Controls.ScrollViewer.HorizontalScrollBarVisibilityProperty, converter.Convert(HorizontalScrollBarVisibility)); contentAdapter.Control.SetValue(wpf::System.Windows.Controls.ScrollViewer.VerticalScrollBarVisibilityProperty, converter.Convert(VerticalScrollBarVisibility)); }