ViewModel中的TextBox CaretIndex属性

时间:2011-02-14 15:33:33

标签: wpf mvvm binding caret

是否可以通过视图中定义的Binding在wpf中的viewmodel中获取/设置TextBox控件的CaretIndex属性值?

由于

2 个答案:

答案 0 :(得分:5)

您无法绑定属性CaretIndex,因为它不是DependencyProperty。这是一个CLR 不接受约束的财产。

答案 1 :(得分:4)

此处的问题是如何通过视图模型获取CaretIndex控件的TextBox。 如果您打算通过绑定到视图模型直接获取它是不可能的。正如我在上一个回答中发布的一个CLR属性而不是依赖属性。

我们能做什么?

最好的解决方案是遵循以下步骤:

  1. 通过单独的类在控件上定义附加属性。
  2. 在视图模型中定义属性,并将附加属性绑定到视图模型中的属性
  3. 根据收到的新值更新附加属性更改事件的回调中的控件属性。
  4. 在这种情况下,我们仍然将视图与模型分开。

    我希望我的回答可以帮到你!