2010-12-01 9 views
0

J'ai développé un contrôle Silverlight qui montre une liste de documents. Cela prend autant ou aussi peu d'espace que le développeur intégrateur aime.Large ChildWindow à partir du petit contrôle Silverlight?

Cependant, lorsque les utilisateurs ajoutent des documents, j'utilise un ChildWindow pour obtenir un tas de métadonnées avant que le document ne soit réellement téléchargé. Cette boîte de dialogue peut être assez grande.

Nous avons trouvé un moyen de passer en mode plein écran, mais nous pensons que cela surprendrait les utilisateurs (et pas dans le sens de la surprise et du plaisir!). Existe-t-il une meilleure façon d'autoriser cette boîte de dialogue à utiliser plus d'espace d'écran que le conteneur parent Silverlight?

Répondre

0

Question intéressante. Pendant un moment, j'ai pensé que vous pouviez contourner le problème en ouvrant un popup HTML vrai ou faux en appelant dans le JavaScript de la page hôte. Ce popup serait alors une autre instance de Silverlight qui pourrait alors être aussi grande que nécessaire.

Cependant, cette solution présente plusieurs défis:

  1. Liste item
  2. Vous devez truquer le 'modalness' de l'instance SL d'origine et/ou la page d'accueil
  3. Vous devez jouer avec JavaScript, bien que cela soit grandement atténué en utilisant jQuery
  4. L'instance SL cible doit être soigneusement dimensionnée de sorte que ChildWindow couvre toute la surface afin de cacher le fait qu'il y a une autre instance ici
  5. Vous devrez établir un moyen de remettre les données acquises dans ChildWindow dans l'instance SL d'origine; vous pouvez le faire en les stockant dans les DOM d'hôte ou en utilisant construit de SL dans local messaging

Bien qu'aucun des défis sont beaucoup-rupture, il pourrait être un peu trop de travail, hors de votre zone de confort, ou impossible en raison des autres limitations externes imposées.

Mais c'est une solution de contournement, n'est-ce pas?