2012-08-02 56 views
0

在我的WPF應用程序中,我有一個水平的StackPanel,我嘗試將它用作工具欄。在這個面板中,我有按鈕,組合框和文本框。由於這些按鈕是最高的,StackPanel會佔用它們的高度。組合框和文本框也是一樣。但我希望他們保持原樣,否則他們看起來很醜。我怎樣才能防止他們擴大和填補所有可用的空間?我試圖將其高度設置爲自動或顯式大小,但這沒有幫助。我也嘗試用Grid替換StackPanel,但這也沒有幫助。我究竟做錯了什麼?水平堆棧面板內控件的寬度

 <StackPanel Orientation="Horizontal" Margin="3, 10"> 
     <ComboBox x:Name="Agencies" DisplayMemberPath="Name" SelectedValuePath="Value" 
        SelectedItem="{Binding SelectedAgency}" 
        Height="50" MinWidth="100" Margin="3,0"/> 
     <Button x:Name="UploadFile" 
      MinWidth="70" 
      Margin="2" 
      HorizontalAlignment="Center" 
      VerticalAlignment="Center" 
      attachProperties:ButtonIcon.Icon="Resources/Images/add.png" 
      Content="Upload File" IsEnabled="{Binding EnrollmentFiles.Any}"       
      Style="{StaticResource ImageButtonStyle}" />   
     <Button x:Name="EnrollmentDelete" 
      MinWidth="70" 
      Margin="2" 
      HorizontalAlignment="Center" 
      VerticalAlignment="Center" 
      attachProperties:ButtonIcon.Icon="Resources/Images/Remove.png" 
      Content="Delete Enrollment" IsEnabled="{Binding EnrollmentFiles.Any}"       
      Style="{StaticResource ImageButtonStyle}" /> 

     <TextBox x:Name="WorkSheetName" /> 
    </StackPanel> 

回答

1

您需要在您的ComboBoxTextBoxVerticalAlignment設置成類似Center。默認設置爲Stretch

<TextBox VerticalAlignment="Center" ... /> 
+0

非常感謝。 – 2012-08-02 18:25:34