【发布时间】:2011-10-12 05:36:30
【问题描述】:
我需要说明何时使用 Pop-up、InteractionRequest。这是我的场景。
我有左侧导航视图,它以树格式显示文件夹(与 Windows 目录相同)。我应该允许用户使用上下文菜单添加、重命名和删除目录。对于添加和重命名操作,它应该弹出一个带有“文本框”的窗口供用户输入,并且应该有“保存”和“取消”按钮。对于删除选项,如果应该要求确认。
添加/重命名操作应该怎么做?
创建没有 ViewModel 的简单窗口(用户输入 TextBox、保存和取消按钮)。保存和取消按钮单击将设置 DialogResult 标志并关闭窗口。
使用 ViewModel 创建简单的窗口(带有用户输入 TextBox 、保存和取消按钮)。 保存和取消按钮点击将在 ViewModel 中处理(这看起来有点乏味,因为代码非常有限)。
有没有其他方法可以处理这个问题?
删除操作应该怎么做?
我会去InteractionRequest
我会选择自定义窗口 (Dialog),它会像 MessageBox 一样被调用,没有弹出窗口或 InteractionRequest(即来自视图模型 => MyMessageBox.Show(.....) == Dialog.Ok。 .
请给我正确的解决方案。
【问题讨论】:
-
我希望这个问题包含有关交互请求和弹出窗口的所有信息。我花了很多时间在哪里使用交互请求和弹出窗口以及不应该使用的位置。
-
好吧,我会做一点研究并很快更新我的答案。