2015-07-11 101 views
0

我想在我的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

回答

1

問題在於您在擴展器中設置的邊距。你可以請嘗試下面的代碼。

<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