【问题标题】:Property Binding to Static Properties in WPF: Width binding doesn't work属性绑定到 WPF 中的静态属性:宽度绑定不起作用
【发布时间】:2011-01-18 08:37:18
【问题描述】:

更新:我已更正帖子,因此问题已结束。

预期结果: 菜单宽度必须等于主窗口宽度。 这是完整的代码:

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

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

【问题讨论】:

    标签: wpf data-binding wpf-controls binding


    【解决方案1】:

    呵呵,

    Dmitry, Application.Current 没有属性 Width...

    使用 Grid 代替 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

    干杯,安瓦卡

    【讨论】:

    • 是的,我的错,应该是: 感谢您的参考。
    猜你喜欢
    • 1970-01-01
    • 2015-10-15
    • 2014-01-29
    • 2010-10-30
    • 2021-01-17
    • 1970-01-01
    • 2017-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多