扩展内容不可见

问题描述:

我想在我的WPF应用程序中有扩展器。它看起来像这样。扩展内容不可见

<Expander Header="Know Words" x:Name="expKnownWords" Margin="2,0,2,300" Height="30" IsExpanded="True" ExpandDirection="Down"> 
      <Expander.Background> 
       <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> 
        <GradientStop Color="Black" Offset="0"/> 
        <GradientStop Color="White" Offset="0.522"/> 
       </LinearGradientBrush> 
      </Expander.Background> 
      <StackPanel x:Name="pnlNextWord" Orientation="Horizontal" Height="200" Margin="10,20,10,20" VerticalAlignment="Top" Visibility="Visible"> 
       <TextBlock x:Name="txtWord" HorizontalAlignment="Left" Height="50" Width="200" Margin="30,100,50,100" VerticalAlignment="Center" Text="{Binding WordToShow, Source={StaticResource ReadWordsWindow}}" /> 
       <Button x:Name="btnShowMeaning" Margin="80,80,50,80" Height="30" Width="190" Visibility="{Binding ShowMeaningButtonVisibility, Source={StaticResource ReadWordsWindow}}" Content="{Binding LblShowMeaning, Mode=OneWay}"/> 
       <TextBlock x:Name="txtMeaning" Margin="20,100,50,100" Height="130" Width="300" HorizontalAlignment="Left" VerticalAlignment="Center" Visibility="{Binding MeaningVisibility}" Text="{Binding MeaningToShow, Source={StaticResource ReadWordsWindow}}"/> 
      </StackPanel> 
</Expander> 

在扩展器控件中,我需要一个包含2个文本框和一个按钮的堆栈面板。问题是,当我运行应用程序时,在扩展器下没有任何东西可见,我似乎无法弄清楚为什么?

+1

因为您将'Expander'的'Height'设置为30.在元素边缘之上也是问题的一部分。 – dkozl

+0

要用'c#'标记你的问题,你必须至少显示与'c#'有关的问题。 – leppie

+0

我尝试了将Height更改为Auto。但它没有奏效。虽然如果我删除扩展器,我可以正确地看到堆叠面板。 – Siddhant

问题在于您在扩展器中设置的边距。你可以请尝试下面的代码。

<Expander Header="Know Words" x:Name="expKnownWords" Margin="2,0,2,0" IsExpanded="True" ExpandDirection="Down"> 
      <Expander.Background> 
       <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0"> 
        <GradientStop Color="Black" Offset="0"/> 
        <GradientStop Color="White" Offset="0.522"/> 
       </LinearGradientBrush> 
      </Expander.Background> 
      <Expander.Content> 
       <StackPanel x:Name="pnlNextWord" Orientation="Horizontal" VerticalAlignment="Top" Visibility="Visible"> 
        <TextBlock x:Name="txtWord" HorizontalAlignment="Left" Height="50" Width="200" Margin="10,80,20,80" VerticalAlignment="Center" Text="Test" /> 
        <Button x:Name="btnShowMeaning" Margin="20,80,20,80" Height="30" Width="190" Visibility="Visible" Content="Content"/> 
        <TextBlock x:Name="txtMeaning" Margin="20,80,20,80" Height="50" Width="300" HorizontalAlignment="Left" VerticalAlignment="Center" Visibility="Visible" Text="Test2"/> 
       </StackPanel> 
      </Expander.Content> 
     </Expander> 
+0

是的,边缘和高度是问题。从“dkozl”发表评论后,我能够弄明白。无论如何,感谢您的帮助。 – Siddhant