У меня было свойство cursorposition в моей модели viewmodel, которое определяет положение курсора в текстовом поле на представлении. Как я могу привязать свойство cursorposition к фактическому положению курсора внутри текстового поля.Обработка курсора внутри текстового поля
0
A
ответ
1
Боюсь, вы не можете ... по крайней мере, не напрямую, так как в элементе управления TextBox отсутствует свойство «CursorPosition».
Вы можете обойти эту проблему, создав DependencyProperty в коде, привязанный к ViewModel, и управляя позицией курсора вручную. Вот пример:
/// <summary>
/// Interaction logic for TestCaret.xaml
/// </summary>
public partial class TestCaret : Window
{
public TestCaret()
{
InitializeComponent();
Binding bnd = new Binding("CursorPosition");
bnd.Mode = BindingMode.TwoWay;
BindingOperations.SetBinding(this, CursorPositionProperty, bnd);
this.DataContext = new TestCaretViewModel();
}
public int CursorPosition
{
get { return (int)GetValue(CursorPositionProperty); }
set { SetValue(CursorPositionProperty, value); }
}
// Using a DependencyProperty as the backing store for CursorPosition. This enables animation, styling, binding, etc...
public static readonly DependencyProperty CursorPositionProperty =
DependencyProperty.Register(
"CursorPosition",
typeof(int),
typeof(TestCaret),
new UIPropertyMetadata(
0,
(o, e) =>
{
if (e.NewValue != e.OldValue)
{
TestCaret t = (TestCaret)o;
t.textBox1.CaretIndex = (int)e.NewValue;
}
}));
private void textBox1_SelectionChanged(object sender, RoutedEventArgs e)
{
this.SetValue(CursorPositionProperty, textBox1.CaretIndex);
}
}
0
Вы можете использовать свойство CaretIndex. Однако это не DependencyProperty и, похоже, не реализует INotifyPropertyChanged, поэтому вы не можете привязываться к нему.
Смежные вопросы
- 1. Обработка Java: позиция курсора текстового поля выключена
- 2. Интеллектуальная обработка текстового поля
- 3. Получите положение текстового поля курсора
- 4. цвет фона меняется после щелчка курсора внутри текстового поля
- 5. обработка немедленного текстового поля значение
- 6. Обработка текстового поля как поля ввода?
- 7. Кнопка внутри текстового поля
- 8. Метки внутри текстового поля
- 9. Visual C++ остановить перемещение курсора текстового поля
- 10. Изменение курсора для текстового поля() мышь над
- 11. Выберите внутри текстового поля на мыши вниз
- 12. Разрыв строки внутри текстового поля
- 13. Ключ внутри текстового поля MVVM
- 14. Кнопка внутри текстового поля winforms
- 15. Прокрутка текста внутри текстового поля
- 16. Неопределенная переменная внутри текстового поля
- 17. Добавление контроля внутри текстового поля?
- 18. Изменение текстового поля внутри ListView
- 19. Использование geshi внутри текстового поля
- 20. Ввод QWidgets внутри текстового поля
- 21. Bootstrap поповер внутри текстового поля
- 22. выделить текст внутри текстового поля
- 23. Запустить HTML внутри текстового поля
- 24. Как вы сравниваете значение текстового поля внутри текстового поля?
- 25. Как отображать тег текстового поля как значение внутри текстового поля?
- 26. Livecode: определить позицию курсора внутри поля
- 27. Как получить идентификатор текстового поля по позиции курсора
- 28. Как установить положение курсора в исходное положение текстового поля?
- 29. Обработка пользовательского курсора Проблема
- 30. Редактировать положение текстового курсора
Спасибо за ответ Томаса. я попробую и вернусь к вам. – deepak