1. Trang chủ
  2. » Công Nghệ Thông Tin

Tài liệu XAML- P2 doc

50 256 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 50
Dung lượng 1,95 MB

Nội dung

ImageBrush dispose d’attributs tout à fait particuliers pour gérer l’apparence de l’image. Il n’est pas question de taille puisque celle-ci dépend du conteneur. En revanche, il est toutefois possible de contrôler la taille relative en utilisant l’attribut Viewport. Si vous l’associez à TileMode, vous pouvez par exemple créer une mosaïque. <Page xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" > <Page.Background > <ImageBrush Viewport="0.5,0.5,0.5,0.5" TileMode="TILE" ImageSource="…\Emoticons\no.gif" /> </Page.Background > <StackPanel > <Label > Une fenêtre avec une image de fond </Label > </StackPanel > </Page > b Figure 2-31 : Afficher une image comme fond de page Afficher une image 2 Le guide du codeur • 51 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Il est aussi possible de paramétrer l’étirement de l’image et son alignement en utilisant les attributs Stretch, AlignmentX.et AlignmentY. <Page xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" > <Page.Background > <ImageBrush Stretch="None" AlignmentY="Bottom" AlignmentX="Right" ImageSource="…\Emoticons\no.gif" /> </Page.Background > <StackPanel > <Label > Une fenêtre avec une image de fond </Label > </StackPanel > </Page > b Figure 2-32 : Afficher une mosaïque comme fond de page 2 Fonctionnalités de base 52 • Le guide du codeur Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. 2.6 Checklist Voici les points essentiels que nous avons abordés dans ce chapitre : j l’affichage des textes et leurs manipulations avec des Label et TextBlock ; j l’affichage et la saisie des textes avec TextBox ; j la saisie d’un mot de passe avec PasswordBox ; j l’affichage des boutons avec Button ; j l’affichage des images avec Image et ImageBrush ; j la réalisation de cadres avec Border ; j l’utilisation des attributs les plus communs et utilisables avec la majorité des contrôles ; j l’utilisation des décorateurs avec TextDecoration. b Figure 2-33 : Afficher une image non étirée Checklist 2 Le guide du codeur • 53 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Disposer les éléments à l’écran Utiliser les coordonnées 56 Utiliser une grille 61 Mettre en page avec un WrapPanel 68 Utiliser un empilement 70 Utiliser le docking 72 Autoriser le défilement 77 Mélanger les techniques de mise en page 81 Créer une page composite 88 Checklist 90 Chapitre 3 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Avec les contrôles vus au chapitre précédent, nous possédons assez d’éléments pour réaliser un écran complet et complexe. Ce qui nous manque maintenant, c’est une méthode pour organiser tout cela. XAML ne se contente pas d’une méthode mais nous en fournit plusieurs, chacune ayant ses avantages et ses inconvénients. 3.1 Utiliser les coordonnées L’utilisation de Canvas est la méthode la plus proche de la technique utilisée avec les anciens API. Si vous avez déjà programmé sous Windows, vous savez certainement que les contrôles étaient positionnés relativement au coin supé- rieur gauche de la fenêtre. Pour positionner les contrôles dans un Canvas, c’est pareil. Comme premier exemple, plaçons dans un écran des étiquettes et des boîtes de texte pour pouvoir introduire le nom, le prénom et l’adresse d’une personne. <Page xmlns= "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" > <Canvas > <Label Name="lblNom" Canvas.Top="10" Canvas.Left="10"> Nom </Label > <TextBox Name="txtNom" Canvas.Top="10" Canvas.Left="80" Width="150" MaxLength="30" CharacterCasing="Upper" /> <Label Name="lblPrenom" Canvas.Top="10" Canvas.Left="240"> Prénom </Label > <TextBox Name="txtPrenom" Canvas.Top="10" Canvas.Left="300" Width="130" MaxLength="30"/> <Label Name="lblAdr" Canvas.Top="40" Canvas.Left="10"> Rue </Label > <TextBox Name="txtAdr" Canvas.Top="40" Canvas.Left="80" Width="350" MaxLength="80"/> <Label Name="lblCP" Canvas.Top="70" Canvas.Left="10"> Code postal </Label > 3 Disposer les éléments à l’écran 56 • Le guide du codeur Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. <TextBox Name="txtCP" Canvas.Top="70" Canvas.Left="80" Width="50" MaxLength="5"/> <Label Name="lblLocalite" Canvas.Top="70" Canvas.Left="150"> Localité </Label > <TextBox Name="txtLocalite" Canvas.Top="70" Canvas.Left="200" Width="230" MaxLength="50"/> </Canvas > </Page > Comme vous pouvez le constater, le placement à l’écran se fait au moyen des attributs Canvas.Top et Canvas.Left. Il s’agit de propriétés attachées. Une propriété attachée est en fait une propriété du parent, ici du Canvas, mais pour laquelle chaque enfant peut assigner une valeur différente. C’est pourquoi, bien que propriété de Canvas, l’attribut Canvas.Top est par exemple un attribut des éléments contenus dans le Canvas et non du Canvas lui-même. La balise Canvas dispose elle-même de quelques attributs. L’attribut Background vous permet de changer la couleur du fond si la couleur standard ne vous satisfait pas. <Canvas Background="LightCoral"> b Figure 3-1 : Présentation avec un Canvas Utiliser les coordonnées 3 Le guide du codeur • 57 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Un autre attribut intéressant est l’attribut IsEnabled. En effet, si vous lui assignez la valeur False, l’ensemble des contrôles contenus dans le Canvas seront eux aussi désactivés. Désactivé et non lecture seule N’oubliez pas toutefois les différences que nous avons vues précédemment entre désactiver et lecture seule pour un contrôle tel que la boîte de texte. <Canvas IsEnabled="False" Background="LightCoral"> b Figure 3-2 : La couleur du fond d’un Canvas b Figure 3-3 : Un Canvas désactivé 3 Disposer les éléments à l’écran 58 • Le guide du codeur Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Les attributs Canvas.Top et Canvas.Left ne sont pas les seuls utilisables pour positionner un contrôle. Vous pouvez également utiliser Canvas.Right et Canvas.Bottom, ce qui permet de placer un contrôle relativement à n’importe quel coin du Canvas. Ajoutons le code suivant devant la balise de fin du nœud Canvas. <Border Width="100" Height="120" BorderThickness="1" Background="White" BorderBrush="Black" Canvas.Top="10" Canvas.Right="10"> <TextBlock Name="blkPhoto" VerticalAlignment="Center" HorizontalAlignment="Center" FontSize="20"> Photo </TextBlock> </Border> <Label Name="lblCopyright" Canvas.Bottom="10" Canvas.Right="10" Content="Micro Application 2006" /> b Figure 3-4 : Un Canvas avec différents points de référence Utiliser les coordonnées 3 Le guide du codeur • 59 Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. Comme vous pouvez le constater, le fait de positionner un contrôle non pas à partir du coin supérieur gauche mais d’un autre coin ne fait pas que changer le système de coordonnées. Lors du redimensionnement de l’écran, les contrôles suivent le coin à partir duquel ils sont positionnés. Cette faculté pourra être utilisée dans de nombreuses circonstances pour obtenir un écran beaucoup plus flexible. Fixer une taille minimale à son Canvas Si vous ne fixez pas une taille minimale à votre Canvas, les éléments contenus vont inévitablement se chevaucher si la fenêtre est réduite au-delà de la taille critique. En remplaçant la balise Canvas dans l’exemple par celle ci-dessous, nous empêcherons ce comportement chaotique. <Canvas Background="LightBlue" MinWidth="550" MinHeight="200"> b Figure 3-5 : Le même Canvas agrandi 3 Disposer les éléments à l’écran 60 • Le guide du codeur Please purchase PDF Split-Merge on www.verypdf.com to remove this watermark. [...]... xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" > . 61 Mettre en page avec un WrapPanel 68 Utiliser un empilement 70 Utiliser le docking 72 Autoriser le défilement 77 Mélanger les techniques de mise en page

Ngày đăng: 21/01/2014, 13:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w