2013-05-01 35 views
3

在我的WPF應用程序中,我創建了一個帶有方向=水平的stackpanel的dockpanel。附加水平向右的一個stackPanel的最後一項

我添加一些按鈕在我的StackPanel(如工具欄)

我想可以設置在我的StackPanel我的最後一個項目被貼在我窗口的右側。

一些圖片爲了解釋。

我有什麼:

enter image description here

我會擁有:

enter image description here

這是我的XAML:

<DockPanel Height="40" VerticalAlignment="Top" > 
    <Border> 

     <StackPanel Orientation="Horizontal" Background="{StaticResource DegradeCouleurTheme}"> 

      <Image Source="ElipseGauche.png" Height="28" Margin="10,0,0,0" /> 

      <StackPanel Orientation="Horizontal" Height="28"> 

       <StackPanel.Background> 
        <ImageBrush ImageSource="ElipseMilieu.png"></ImageBrush> 
       </StackPanel.Background> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Goto_Premier"> 
        <Image Source= "xRtDiva_XWPF_TBR_PREMIER.PNG_IMAGES.png" Height="16"/> 
       </Button> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Goto_Precedent"> 
        <Image Source= "xRtDiva_XWPF_TBR_PRECED.PNG_IMAGES.png" Height="16"/> 
       </Button> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Goto_Suivant"> 
        <Image Source= "xRtDiva_XWPF_TBR_SUIVANT.PNG_IMAGES.png" Height="16"/> 
       </Button> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Goto_Dernier"> 
        <Image Source= "xRtDiva_XWPF_TBR_DERNIER.PNG_IMAGES.png" Height="16"/> 
       </Button> 

      </StackPanel> 

      <Image Source="ElipseDroite.png" Height="28" Margin="0,0,0,0" /> 


      <Image Source="ElipseGauche.png" Height="28" Margin="15,0,0,0" /> 

      <StackPanel Orientation="Horizontal" Height="28"> 

       <StackPanel.Background> 
        <ImageBrush ImageSource="ElipseMilieu.png"></ImageBrush> 
       </StackPanel.Background> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Creer" > 
        <Image Source= "Toolbar_Creer.png" Height="16" /> 
       </Button> 

      </StackPanel> 

      <Image Source="ElipseDroite.png" Height="28" Margin="0,0,0,0" /> 

      <Image Source="ElipseGauche.png" Height="28" Margin="15,0,0,0" /> 


      <StackPanel Orientation="Horizontal" Height="28"> 

       <StackPanel.Background> 
        <ImageBrush ImageSource="ElipseMilieu.png"></ImageBrush> 
       </StackPanel.Background> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Evenement_Supprimer"> 
        <Image Source= "Toolbar_Supprimer.png" Height="16"/> 
       </Button> 

      </StackPanel> 

      <Image Source="ElipseDroite.png" Height="28" Margin="0,0,0,0" /> 

      <Image Source="ElipseGauche.png" Height="28" Margin="15,0,0,0" /> 


      <StackPanel Orientation="Horizontal" Height="28"> 

       <StackPanel.Background> 
        <ImageBrush ImageSource="ElipseMilieu.png"></ImageBrush> 
       </StackPanel.Background> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Evenement_Joints"> 
        <Image Source= "Toolbar_FicJoints.png" Height="18"/> 
       </Button> 

      </StackPanel> 

      <Image Source="ElipseDroite.png" Height="28" Margin="0,0,0,0" /> 

      <Image Source="ElipseGauche.png" Height="28" Margin="15,0,0,0" /> 


      <StackPanel Orientation="Horizontal" Height="28"> 

       <StackPanel.Background> 
        <ImageBrush ImageSource="ElipseMilieu.png"></ImageBrush> 
       </StackPanel.Background> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Evenement_Annuler" > 
        <Image Source= "Toolbar_Annuler.png" Height="16"/> 
       </Button> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_Evenement_Valider"> 
        <Image Source= "Toolbar_Valider.png" Height="16"/> 
       </Button> 

      </StackPanel> 

      <Image Source="ElipseDroite.png" Height="28" Margin="0,0,0,0" /> 



      <Image Source="ElipseGauche.png" Height="28" Margin="15,0,0,0" /> 


      <StackPanel Orientation="Horizontal" Height="28"> 

       <StackPanel.Background> 
        <ImageBrush ImageSource="ElipseMilieu.png"></ImageBrush> 
       </StackPanel.Background> 

       <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_App_Parametrer" > 
        <Image Source= "Toolbar_Parametrer.png" Height="16"/> 
       </Button> 

      </StackPanel> 

      <Image Source="ElipseDroite.png" Height="28" Margin="0,0,0,0" /> 

      <Grid HorizontalAlignment="Right"> 
       <StackPanel Orientation="Horizontal" Height="28" > 
        <Image Source="ElipseGauche.png" Height="28" Margin="15,0,0,0" /> 


        <StackPanel Orientation="Horizontal" Height="28"> 

         <StackPanel.Background> 
          <ImageBrush ImageSource="ElipseMilieu.png"></ImageBrush> 
         </StackPanel.Background> 

         <Button Template="{StaticResource BoutonRessourcesTpl}" Click="Button_Click_About" > 
          <Label Margin="0,0,0,1" Foreground="White" Content="About" Height="16" VerticalAlignment="Center" HorizontalAlignment="Center" Padding="0,0,0,0"/> 
         </Button> 

        </StackPanel> 

        <Image Source="ElipseDroite.png" Height="28" Margin="0,0,0,0" /> 
       </StackPanel> 
      </Grid> 


     </StackPanel> 

    </Border> 
</DockPanel> 

我試圖在我的堆疊面板的最後一項上使用horizo​​ntalaligneemnt = right的網格,但它沒有任何效果(它是邏輯!)

任何人都可以幫助我嗎?

非常感謝:)

回答

2

你不能用stackpanel來做到這一點。您將需要使用網格。

+0

好了,你知道這是否有可能修改我的XAML whitout大的修改? – 2013-05-01 13:47:36

+0

它不應該是一個巨大的改變....只是修改你最外層的堆棧面板到一個Grid(甚至是DockPanel)。添加一些網格列和行,你就全部設置好了。有關這方面的文件很多。 – Jeff 2013-05-01 13:53:18

+1

用width =「*」製作網格中的最後一列,並將xaml中的最終網格設置在該行中。這樣,子網格中的所有東西都會一路向右 – Jeff 2013-05-01 13:55:22

-1

您可以通過使用在StackPanel中做到這一點 方向=「橫向」

相關問題