我的问题是:
我有这个
MyAutoCompleteBox
,
ACBoxDest
(它继承自
AutoCompleteBox
只是一个新的事件
EnterKeyDown
但这应该与我的问题无关)
ItemsSource
只是代码尾中设置的字符串列表。
我想在里面绑定文本
ACBox目的地
始终与代码尾中的公共字段相同
DestPath
.
当前,当我更改
目标路径
变量,它也不会改变
ACBox目的地
gui中的文本。
xaml:
<MyACBox:MyAutoCompleteBox x:Name="ACBoxDest" FilterMode="StartsWith"
Text="{Binding Path=DestPath, Mode=TwoWay}"
ItemContainerStyle="{StaticResource containerStyle}"
Populating="ACBoxDestPopulating"
KeyboardNavigation.TabIndex="1"
EnterKeyDown="EnterKeyHandler"
GotFocus="ACBoxDestFocused"
LostFocus="ACBoxDestUnfocused" />
代码尾:
public string DestPath {get;set;}
...
private void Initialize()
{
DestPath = _DEFAULT_TARGET_PATH;
if (!ACBoxDest.Text.Equals(DestPath))
MessageBox.Show("ACBoxDest.Text != DestPath");
}
^为了简化调试说明
MessageBox
每次都会弹出。这意味着里面的文本
ACBox目的地
不等于
目标路径
即使他们被束缚
Mode=TwoWay
。有人知道为什么会发生这种情况,以及我如何解决它吗?
非常感谢。谢谢