我有TreeView bound to an XmlDataProvider。节点的名称反映在树中,节点的数据位于TextBox中。单击树项时,它会在TextBox中加载数据。
确定用户何时更改XmlDataProvider引用的源数据的最佳方法是什么。
我想在文件名旁边放一个星号(*)来表示文档很脏并且应该保存。这也将决定退出程序时是否提醒用户保存。
不幸的是,当TextBox通过双向绑定更新时,它会触发TextChanged事件。
有没有办法确定TextChanged事件是由双向绑定代码而不是用户触发的?
我还试图在XmlDataProvider上使用DataChanged事件,但这个事件在最初加载数据时才会出现。
我想我可以直接捕捉TextBox中的按键,但它看起来很乱。
[编辑] 看来PreviewTextInput似乎可以用于此目的...有更好的方法吗?
答案 0 :(得分:0)
PreviewTextInput成功了。