2010-12-01 10 views
0

Ich habe ein Silverlight-Steuerelement entwickelt, das eine Liste von Dokumenten anzeigt. Dies benötigt so viel oder so wenig Platz, wie es dem integrierenden Entwickler gefällt.Großes ChildWindow von kleiner Silverlight Steuerung?

Wenn die Benutzer jedoch Dokumente hinzufügen, verwende ich ein ChildWindow, um eine Reihe von Metadaten zu erhalten, bevor das Dokument tatsächlich hochgeladen wird. Dieser Dialog kann ziemlich groß sein.

Wir haben einen Weg gefunden, Vollbild zu sehen, aber wir denken, dass dies die Benutzer überraschen würde (und nicht im Sinne von Überraschung und Freude!). Gibt es eine bessere Möglichkeit, diesen Dialog mehr Bildschirmfläche als den übergeordneten Silverlight-Container verwenden zu lassen?

Antwort

0

Interessante Frage. Für einen Moment dachte ich, dass Sie das Problem umgehen könnten, indem Sie ein echtes oder gefälschtes HTML-Popup öffnen, indem Sie das JavaScript der Host-Seite aufrufen. Dieses Popup wäre dann eine weitere Silverlight-Instanz, die dann so groß wie nötig sein könnte.

Allerdings hat diese Lösung einige Herausforderungen:

  1. Liste item
  2. Sie müssen Fälschung der ‚modalness‘ der ursprünglichen SL-Instanz und/oder der Host-Seite
  3. Sie müssen sich mit Geige JavaScript, obwohl dies weitgehend durch Verwendung von jQuery
  4. erleichtert wird Die Ziel-SL-Instanz sollte sorgfältig so groß sein, dass das ChildWindow die gesamte Oberfläche bedeckt, um die Tatsache zu verbergen, dass es hier eine andere Instanz gibt
  5. Sie müssen eine Möglichkeit finden, die in ChildWindow erfassten Daten zurück in die ursprüngliche SL-Instanz zu übertragen. Sie können entweder das tun, indem es in den Host-DOM speichern oder SL mit eingebauten local messaging

Während weder der Herausforderungen Deal brechend sind, könnte es ein bisschen zu viel Arbeit, aus der Komfort-Zone werden oder aufgrund der anderen äußeren Beschränkungen unmöglich.

Aber es ist eine nette kleine Abhilfe, nicht wahr?

Verwandte Themen