Je construis une petite application WPF. Pour la mise en page dans l'application, j'utilise une grille avec deux colonnes et deux lignes. Je veux avoir un rectangle d'arrière-plan qui remplisse l'ensemble de l'application, et je veux que le rectangle d'arrière-plan se détende, donc si un utilisateur redimensionne la fenêtre, le rectangle s'étire et remplit toujours la fenêtre entière. Donc, dans ma grille, je l'ai défini un rectangle comme suit:Comment est-ce que je peux faire strech rectangle sur toute la grille?
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Rectangle x:Name="BackgroundRect" Fill="Stretch">
<Rectangle.Fill>
<RadialGradientBrush GradientOrigin="0.485,0.2" Center="0.492,0.526">
<GradientStop Color="#FF3C3C3E" Offset="1"/>
<GradientStop Color="#FF84897D"/>
</RadialGradientBrush>
</Rectangle.Fill>
</Rectangle>
</grid>
Maintenant, j'ai essayé de définir les rectangles Remplissez à strech, je me suis fixé grid.columnspan et grid.rowspan à 2. J'ai essayé de placer le rectangle dans une vue. Rien ne fonctionne.
Est-ce que quelqu'un sait comment je peux faire en sorte que le rectangle remplisse toute ma fenêtre?
Merci d'avance!
Est-ce que vous définissez la propriété Fill deux fois sur le Rectangle (une fois en tant qu'attribut puis en tant qu'élément enfant) juste une faute de frappe? – AnthonyWJones
Notez que les panneaux ont une propriété [Arrière-plan] (http://msdn.microsoft.com/en-us/library/system.windows.controls.panel.background.aspx) donc, si le but ultime est de définir un en arrière-plan dans la grille et ne pas effectuer d'autres actions avec le rectangle, alors vous pouvez simplement définir Grid.Background avec le RadialGradientBrush. –