2010-02-18 3 views
0

Mise à jour: j'ai corrigé le message, donc la question est fermée.Liaison de propriété aux propriétés statiques dans WPF: la liaison de largeur ne fonctionne pas

Résultat attendu: largeur du menu doit être égale à la largeur de la fenêtre principale. Voici le code complet:

<Menu Name="menu1" DockPanel.Dock="Top"> 
    <Menu.Width> 
     <Binding Path="MainWindow.Width" 
       Source="{x:Static Application.Current}" 
       UpdateSourceTrigger="PropertyChanged"/> 
    </Menu.Width> 
    <MenuItem Header="File"> 
     <MenuItem Header="Open" /> 
     <MenuItem Header="Close" /> 
    </MenuItem> 
</Menu> 

Résultat: largeur de menu est égale à la largeur du contenu

Répondre

1

Doh,

Dmitry, Application.Current n'a pas une largeur de propriété .. .

Utilisez la grille au lieu de DockPanel:

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> 
    <Grid> 
     <Menu Name="menu1" VerticalAlignment="Top"> 
     <MenuItem Header="File"> 
      <MenuItem Header="Open"/> 
      <MenuItem Header="Close"/> 
     </MenuItem> 
     </Menu> 
    </Grid> 
</Page> 

Ne pas trop compliquer les choses. Et je vous encourage à lire des articles merveilleux Dr. WPF: ItemsControl from A to Z

Cheers, Anvaka

+0

Oui, mon erreur, il devrait être: Merci pour votre référence. – Dmitry

Questions connexes