Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想要一个按钮将在列表框中选择的文本插入到文本框中。我正在尝试为此使用命令,我将当前插入符号索引作为命令参数传递,然后命令处理程序将在此索引处插入选定的文本。是否可以?我不知道如何在 xaml 中引用 aTextBox.CaretIndex
这个问题类似于这个问题。
关键是绑定属性 CaretIndex 是没有用的,因为它不是 DependencyProperty,因为您不会收到值更改的通知。具体来说,如果您直接绑定到 CaretIndex 程序将编译,但数据绑定中的 CaretIndex 的值将始终为 0,即使您在文本框中移动光标也是如此。
您可以改为创建可以绑定的附加属性,而不是 CaretIndex。此处提出了一种解决方案,其中添加了附加属性以绑定 SelectedText 属性,该属性也不是依赖项属性。这个想法是一样的。
你可以绑定到TextBoxby name 并CaretIndex给Pathprop
TextBox
CaretIndex
Path
<TextBox Name="MyTextBox" Text="My Text" /> <Button Command="{Binding MyCommand}" CommandParameter="{Binding ElementName=MyTextBox Path=CaretIndex}"/>