2010-03-12 7 views
2

J'essaie d'utiliser Tim Heuer's FloatableWindow control pour une fenêtre d'options non modale dans mon application Silverlight. Cependant, je rencontre un problème avec le FloatableWindow redimensionnant sa grille parent quand il s'ouvre. Par exemple, avant d'ouvrir la fenêtre de l'application ressemble à ceci:FloatableWindow redimensionne la grille dans Silverlight

Screenshot of application before FloatableWindow is open http://www.freeimagehosting.net/uploads/a71ab86e4b.png

Mais après avoir ouvert la fenêtre, la première ligne de la grille se développe:

Screenshot of application after FloatableWindow is open http://www.freeimagehosting.net/uploads/94d97c22ee.png

Je suis actuellement définissant FloatableWindow.ParentLayoutRoot à la grille LayoutRoot dans MainPage.xaml. Est-ce la bonne chose à faire? Comment puis-je empêcher le redimensionnement de la grille lors de l'ouverture de FloatableWindow?

Répondre

2

Je suis tombé sur ça aussi. fenêtre flottables devient un peu boiteux si votre grille est basée tableau:

<Grid x:Name="LayoutRoot"> 
    <Grid.RowDefinitions> 
    bla bla... 
    </Grid.RowDefinitions> 
<Grid.ColumnDefinitions> 
    bla bla... 
</Grid.ColumnDefinitions> 

    more of your code bla bla... 
</Grid> 

La solution est très simple il suffit d'ajouter une grille factice là-bas pour votre table mise en page basée et il suffit d'utiliser « LayoutRoot » comme vous l'avez fait auparavant.

<Grid x:Name="LayoutRoot"> 
    <Grid x:Name="DummyGrid"> 
    <Grid.RowDefinitions> 
    bla bla... 
    </Grid.RowDefinitions> 
    <Grid.ColumnDefinitions> 
    bla bla... 
    </Grid.ColumnDefinitions> 

    more of your code bla bla... 
</Grid> 
</Grid> 
Questions connexes