AutoCompleteBox和SearchText清除

Eza*_*ade 5 silverlight-4.0 autocompletebox

这不是一个问题,但我对问题的答案我无法在互联网上找到解决方案.

我在MVVM Silverlight应用程序中清除SearchText时遇到问题.我可以清除SelectedItem和Text,但是SearchText被遗忘了.它是只读的,不能通过绑定更改.

示例:带有国家/地区列表的AutoCompleteBox.当用户想要进入澳大利亚时,他们进入'au'此时该列表与奥地利和澳大利亚一起出现.然后用户可以选择澳大利亚并继续前进.在编辑结束时,他们点击"保存"按钮.此时,您可能希望清除数据以输入新数据.

即使您绑定了SelectedItem和Text属性,并将它们分别设置为'null'和string.Empty,SearchText属性仍然存在,AutoCompleteBox将不会清除,但将包含'au'.

Eza*_*ade 2

我在互联网上发布了有关此问题的信息,但无法得到有关控件本身的答案,因此我从不同的角度来看待它,这可能会帮助那些像我一样最终感到沮丧的人。

我正在使用 Silverlight 导航模板应用程序,该应用程序使用 NavigationFrame 在其中加载 Silverlight 页面。我注意到,如果我导航到另一个页面并返回到我的数据表单,SearchText 就会被清除。绑定到属性的任何值仍然有效,只是所有 AutoCompleteBox 上的 SearchText 已清除。因此,我使用 PageConductor 方法将 NavigationFrame 注入到 ViewModel 中,在那里我可以调用刷新方法。我从 Silverlight Firestarter 事件中的 John Papa示例中获得了此方法,我只是向 IPageConductor 接口添加了一个 Refresh 方法,因此我现在可以调用“PageConductor.Refresh()”,这就像重新加载页面一样。我希望这对那里的人有帮助。