2010-02-18 106 views
0

更新:我已更正帖子,所以问题已关闭。属性绑定到WPF中的静态属性:宽度绑定不起作用

预期结果: 菜单宽度必须等于主窗口宽度。 这里是全码:

<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> 

其结果是: 菜单宽度等于内容宽度

回答

1

卫生署,

梅德,Application.Current不具有属性Width .. 。

使用电网的,而不是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> 

不要过分复杂的事情。我真的鼓励你阅读精彩的WPF博士的文章:ItemsControl from A to Z

干杯,Anvaka

+0

是的,我的错误,应该是: <绑定路径= “MainWindow.Width” 来源=“{ x:Static Application.Current}“UpdateSourceTrigger =”PropertyChanged“/> 感谢您参考。 – Dmitry 2010-02-18 15:03:41