2014-12-05 51 views
0

所以我創建了一個小的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

回答

2

的問題是,大部分的控件的使用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