为什么我看不到我创建的菜单?

问题描述:

所以我创建了一个小的wpf应用程序来获得乐趣,我希望它有一个菜单。我创建了菜单,但没有,但是当我运行程序时,菜单根本没有显示出来。在菜单的代码是目前:为什么我看不到我创建的菜单?

<Window x:Class="TBA_Alpha.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="TBA LogIn" Height="350" Width="525"> 
<Grid> 
    <PasswordBox x:Name="tbPsw" HorizontalAlignment="Left" Margin="214,143,0,0" VerticalAlignment="Top" Width="133" SelectionBrush="Black" Background="White"> 
     <PasswordBox.BorderBrush> 
      <LinearGradientBrush EndPoint="0,20" MappingMode="Absolute" StartPoint="0,0"> 
       <GradientStop Color="#FFABADB3" Offset="0.05"/> 
       <GradientStop Color="#FFE2E3EA" Offset="0.07"/> 
       <GradientStop Color="Black" Offset="1"/> 
      </LinearGradientBrush> 
     </PasswordBox.BorderBrush> 
    </PasswordBox> 
    <TextBox x:Name="tbUId" HorizontalAlignment="Left" Height="23" Margin="214,94,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="133" SelectionBrush="Black"> 
     <TextBox.Background> 
      <SolidColorBrush Color="White"/> 
     </TextBox.Background> 
     <TextBox.BorderBrush> 
      <LinearGradientBrush EndPoint="0,20" MappingMode="Absolute" StartPoint="0,0"> 
       <GradientStop Color="#FFABADB3" Offset="0.05"/> 
       <GradientStop Color="#FFE2E3EA" Offset="0.07"/> 
       <GradientStop Color="Black" Offset="1"/> 
      </LinearGradientBrush> 
     </TextBox.BorderBrush> 
    </TextBox> 
    <Button Content="LogIn" HorizontalAlignment="Left" Margin="239,200,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click"/> 
    <TextBlock HorizontalAlignment="Left" Margin="214,73,0,0" TextWrapping="Wrap" Text="Your UserID:" VerticalAlignment="Top"/> 
    <TextBlock HorizontalAlignment="Left" Margin="214,122,0,0" TextWrapping="Wrap" Text="Your Password:" VerticalAlignment="Top"/> 
    <Menu HorizontalAlignment="Left" Height="25" VerticalAlignment="Top" Width="43" BorderThickness="1"> 
     <MenuItem Header=" New " RenderTransformOrigin="0.5,0.5" Width="63" Height="36" Background="White" Visibility="Visible" AllowDrop="True" IsHitTestVisible="True"> 
      <MenuItem Header=" User " Click="newUser"/> 
     </MenuItem> 
    </Menu> 
</Grid> 

任何任何帮助将大大赞赏的感谢。

编辑:增加了整个XAML代码为WPF,这里的菜单靠近代码的结束

编辑:删除所有的额外的东西,只留下头,仍然遇到了同样的问题

编辑:尝试的代码在不同的清洁项目和它的工作,谢谢,你

+0

我不能和你发布的代码重现您的问题。您是否尝试过忽略除“Header”之外的所有属性?或者也许你已经实现的任何其他代码可能会导致这种行为?也许其他控件重叠你的菜单? – Sjeijoet 2014-12-05 13:09:50

+0

此代码包含哪些控件?也许是一个网格? – 2014-12-05 13:11:53

+0

可能问题不在于XAML的这一部分。你可以发布更多/整个XAML吗? – Manish 2014-12-05 13:13:42

的问题是,大部分的控件的使用Magrin属性本身分开,而不是Grid的功能。由于他们都没有指定附加属性Grid.Row,它们都在同一行。由于Menu未指定Margin,因此它位于Grid的顶部,因此与其他控件重叠。

使用try实际电网行

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition/> 
     <RowDefinition/> 
     <RowDefinition/> 
     <RowDefinition/> 
     <RowDefinition/> 
     <RowDefinition/> 
    </Grid.RowDefinitions> 

    <PasswordBox x:Name="tbPsw" HorizontalAlignment="Left" Grid.Row="0" VerticalAlignment="Top" Width="133" SelectionBrush="Black" Background="White"> 
     <PasswordBox.BorderBrush> 
      <LinearGradientBrush EndPoint="0,20" MappingMode="Absolute" StartPoint="0,0"> 
       <GradientStop Color="#FFABADB3" Offset="0.05"/> 
       <GradientStop Color="#FFE2E3EA" Offset="0.07"/> 
       <GradientStop Color="Black" Offset="1"/> 
      </LinearGradientBrush> 
     </PasswordBox.BorderBrush> 
    </PasswordBox> 
    <TextBox x:Name="tbUId" HorizontalAlignment="Left" Height="23" Grid.Row="1" TextWrapping="Wrap" VerticalAlignment="Top" Width="133" SelectionBrush="Black"> 
     <TextBox.Background> 
      <SolidColorBrush Color="White"/> 
     </TextBox.Background> 
     <TextBox.BorderBrush> 
      <LinearGradientBrush EndPoint="0,20" MappingMode="Absolute" StartPoint="0,0"> 
       <GradientStop Color="#FFABADB3" Offset="0.05"/> 
       <GradientStop Color="#FFE2E3EA" Offset="0.07"/> 
       <GradientStop Color="Black" Offset="1"/> 
      </LinearGradientBrush> 
     </TextBox.BorderBrush> 
    </TextBox> 
    <Button Content="LogIn" HorizontalAlignment="Left" Grid.Row="2" VerticalAlignment="Top" Width="75" Click="Button_Click"/> 
    <TextBlock HorizontalAlignment="Left" Grid.Row="3" TextWrapping="Wrap" Text="Your UserID:" VerticalAlignment="Top"/> 
    <TextBlock HorizontalAlignment="Left" Grid.Row="4" TextWrapping="Wrap" Text="Your Password:" VerticalAlignment="Top"/> 
    <Menu Grid.Row="5" HorizontalAlignment="Left" Height="25" VerticalAlignment="Top" Width="43" BorderThickness="1"> 
     <MenuItem Header=" New " RenderTransformOrigin="0.5,0.5" Width="63" Height="36" Background="White" Visibility="Visible" AllowDrop="True" IsHitTestVisible="True"> 
      <MenuItem Header=" User " Click="newUser"/> 
     </MenuItem> 
    </Menu> 
</Grid> 
+0

这也不起作用。我把它放在一个Grid.Row中,当它运行时它仍然不会显示。 – 2014-12-05 17:38:07

+0

尝试删除“高度”和“宽度”数据,并仔细检查是否有足够的行定义(应该有六个) – David 2014-12-05 17:52:49