private void EditTextBlockName(object sender, MouseButtonEventArgs e) { EditableTextBlock editableTextBlock = sender as EditableTextBlock; if (previousTextBlock == null || previousTextBlock != editableTextBlock) { previousTextBlock = editableTextBlock; clickCount = 0; } if (e.MiddleButton == MouseButtonState.Pressed || e.RightButton == MouseButtonState.Pressed) { editableTextBlock.IsInEditMode = true; } else if (clickCount == 0) { clickCount++; stopwatch2 = Stopwatch.StartNew(); } else if (clickCount == 1) { int elapsedMilliseconds = (int)stopwatch2.ElapsedMilliseconds; if (elapsedMilliseconds > 600) { editableTextBlock.IsInEditMode = true; stopwatch2.Reset(); clickCount = 0; } } }
public EditableTextBlockAdorner(EditableTextBlock adornedElement) : base(adornedElement) { _collection = new VisualCollection(this); _textBox = new TextBox(); _textBlock = adornedElement; Binding binding = new Binding("Text") {Source = adornedElement}; _textBox.SetBinding(TextBox.TextProperty, binding); _textBox.AcceptsReturn = true; _textBox.MaxLength = adornedElement.MaxLength; _textBox.KeyUp += _textBox_KeyUp; _collection.Add(_textBox); }