2010-08-24 23 views
0

Je dois placer une image dans un contrôle d'image WPF (comme sur le bureau Windows (propriété de mosaïque d'arrière-plan)). Est-ce que quelqu'un sait le temps c'est possible et si oui, comment?WPF: image mosaïque

Meilleures salutations, Alexander

Répondre

1

Voici un exemple de rectangle que j'ai emprunté à MSDN.

DrawingBrush myBrush = new DrawingBrush(); 

GeometryDrawing backgroundSquare = 
    new GeometryDrawing(
     Brushes.White, 
     null, 
     new RectangleGeometry(new Rect(0, 0, 100, 100))); 

GeometryGroup aGeometryGroup = new GeometryGroup(); 
aGeometryGroup.Children.Add(new RectangleGeometry(new Rect(0, 0, 50, 50))); 
aGeometryGroup.Children.Add(new RectangleGeometry(new Rect(50, 50, 50, 50))); 

LinearGradientBrush checkerBrush = new LinearGradientBrush(); 
checkerBrush.GradientStops.Add(new GradientStop(Colors.Black, 0.0)); 
checkerBrush.GradientStops.Add(new GradientStop(Colors.Gray, 1.0)); 

GeometryDrawing checkers = new GeometryDrawing(checkerBrush, null, aGeometryGroup); 

DrawingGroup checkersDrawingGroup = new DrawingGroup(); 
checkersDrawingGroup.Children.Add(backgroundSquare); 
checkersDrawingGroup.Children.Add(checkers); 

myBrush.Drawing = checkersDrawingGroup; 
myBrush.Viewport = new Rect(0, 0, 0.25, 0.25); 
myBrush.TileMode = TileMode.Tile; 

exampleRectangle.Fill = myBrush; 

Il montre comment paver un rectangle. Voici le lien vers MSDN: WPF Brush Overview - MSDN

+1

Merci pour vos réponses. Maintenant, je suis le code XAML suivant: Cette mosaïque de l'image; mais quand je redimensionne le Rectangle, les «images en mosaïque» sont étirées. Cependant, je veux qu'ils se répètent (comme une image de fond sur une page Web HTML). – alxppp

+1

Trouvé la solution: alxppp

+0

Désolé je ne pouvais pas répondre à votre commentaire, je me suis juste réveillé: P Je suis content que vous ayez tout trié. :RÉ –

1

Si vous dessinez votre image avec un DrawingBrush vous pouvez définir la propriété TileMode-TileMode.Tile. En supposant que j'ai bien compris votre question, il fait ce que vous voulez.