【发布时间】:2011-06-14 17:58:17
【问题描述】:
我正在使用 Silverlight MVVM 模型。面对一个小问题:
有一个组合框显示两个值(默认选择其中一个)当用户更改组合框的值时,会显示一个消息框,要求用户确认,如果“是”,则该值将被更改,如果“否”则值保持不变,消息框保留在 ViewModel 中,并在选定项的 set 属性上触发。我面临的问题是,当用户选择否(或取消)时,即使没有发生任何事情(根据功能),但组合框不会返回到原始位置并且它保持在选定的位置(即组合框保持在展开位置) .
为什么它停留在那个展开的位置以及如何将它带到它的原始位置??
以下是部分代码,希望有助于理解:
MessageBoxResult msg = MessageBox.Show("Really delete?","Confirm delete", MessageBoxButtons.OKCancel)
if(msg == "OK")
{
Do this;
}
else
{
Do nothing;
}
现在组合框中有两个值,分别是“A”和“B”。当用户更改值时会弹出此弹出窗口,即如果默认值为 A 并且用户将其更改为 B 则弹出窗口将询问您是否要继续,当用户单击确定时一切正常,但当用户单击取消时尽管应用程序中没有发生任何事情,但 UI 中的值发生了变化,即用户已经说取消将值从 A 更改为 B,但随后 B 也作为选定项显示在组合框中。
【问题讨论】:
-
发布一些代码。没有它,您的问题将无法回答。
标签: silverlight mvvm messagebox