从小Silverlight控件的大型ChildWindow?

时间:2010-12-01 08:32:22

标签: silverlight silverlight-4.0

我开发了一个Silverlight控件,显示了一个文档列表。这需要占用集成开发人员喜欢的空间。

但是,当用户添加文档时,我使用ChildWindow在文档实际上传之前获取一堆元数据。这个对话框可能相当大。

我们已经找到了一种全屏显示的方法,但我们认为这会让用户感到惊讶(而不是惊喜和喜悦!)。有没有更好的方法允许此对话框使用比父Silverlight容器更多的屏幕空间?

1 个答案:

答案 0 :(得分:0)

有趣的问题。有一会儿,我想你可以通过调用主页的JavaScript来打开一个真实或假的HTML弹出窗口来绕过这个问题。这个弹出窗口将是另一个Silverlight实例,然后可以根据需要大小。

然而,这个解决方案有几个挑战:

  1. 列表项
  2. 您需要伪造原始SL实例和/或主页的“模态”
  3. 你需要摆弄JavaScript,尽管这在很大程度上通过使用jQuery来缓解
  4. 应仔细调整目标SL实例的大小,以便ChildWindow覆盖整个表面,以隐藏此处有另一个实例的事实
  5. 您需要建立一种方法,将ChildWindow中获取的数据传回原始SL实例;您可以通过将其存储在主机的DOM中或使用SL内置的local messaging
  6. 来实现此目的

    虽然这两项挑战都不是突破性的,但可能会有一点太多的工作,超出你的舒适范围,或者由于其他外部限制而无法实施。

    但这是一个简洁的小解决方法,不是吗?