2013-11-11 2 views
0
    <Menu Height="50" Margin="0,0,0,0" HorizontalAlignment="Stretch" FlowDirection="RightToLeft"> 
         <Menu.Background> 
          <LinearGradientBrush EndPoint="0,0" StartPoint="0,1"> 
           <GradientStop Color="#FFB3DDF2" Offset="1.0"/> 
           <GradientStop Color="#FFD6E9F4" Offset="0.0"/> 
          </LinearGradientBrush> 
         </Menu.Background> 
        </Menu> 

Это меню будет растягиваться независимо от того, как долго длится страница и не требуется ширина.Высота и ширина с меню

    <Menu Width="350" Margin="0,0,0,0" VerticalAlignment="Stretch" HorizontalAlignment="Left" FlowDirection="RightToLeft" DockPanel.Dock="Bottom"> 
         <Menu.Background> 
          <LinearGradientBrush EndPoint="0,0" StartPoint="0,1"> 
           <GradientStop Color="#FFD6E9F4" Offset="1.0"/> 
           <GradientStop Color="White" Offset="0.0"/> 
          </LinearGradientBrush> 
         </Menu.Background> 
        </Menu> 

Я хочу сделать то же самое с помощью этого меню, однако он требует высоты, которая означает, что если я растянуть страницу вниз, размер меню не будет растягиваться со страницей. Когда я не добавляю высоту в код, панель меню не появляется. Мой вопрос, почему мне не нужна ширина для строки меню, но мне нужна высота.

Заранее спасибо

ответ

2

Это по дизайну.

меню бар является то, что предполагается протянуть через контроль он содержится. Именно поэтому она не нуждается в ширину.

Он нуждается в высоте, потому что вы можете разместить в нем любой контент.

Высота растяжки не имела бы большого значения для элемента управления меню, поскольку это была бы просто пустая область его цвета фона, если бы WPF рисовал ее для вас.

+0

Спасибо за ответ, есть другой элемент управления, который действует как меню, которое я могу использовать, поэтому мне не нужна фиксированная высота? –

Смежные вопросы