Is it possible to get/set the value of开发者_开发问答 CaretIndex property of a TextBox control in viewmodel in wpf via Binding defined in view?
Thanks
You can not bind the property CaretIndex
since it is not a DependencyProperty
. It is a CLR
property that does not accept binding.
The issue here is how to get the CaretIndex
of the TextBox
control via the view model.
If you intent to get it directly by binding to the view model its impossible. As I posted in the previous answer its a CLR property and not a dependency property.
What can we do?
The best solution for that is to follow the steps:
- Define attached property on the control via separate class.
- Define a property in the view model and bind the attached property to the one in the view-model
- Update the control property in the callback of the attached property changed event according to the new value received.
In this case, we still separate the view from the model.
I hope my answer helps you!
精彩评论