2015-04-04 77 views
0

我正在開發一個WPF應用程序,我想要以下功能:如果用戶右鍵點擊一個進度條,一個小的上下文菜單應該在點擊位置彈出。這個菜單應該只包含幾個水平排列的按鈕。我應該爲此使用ContextMenu還是有更適合的WPF元素? 我嘗試了文本菜單,這是它的樣子:我應該使用ContextMenu來顯示幾個按鈕嗎?

enter image description here

這是XAML:

 <ProgressBar x:Name="PgF" Height="10" Value="{Binding Path=FileCurrentMs}" Maximum="{Binding Path=FileLengthMs}"> 
      <ProgressBar.ContextMenu> 
       <ContextMenu> 
        <StackPanel Orientation="Horizontal"> 
         <Button Content="A"/> 
         <Button Content="B"/> 
         <Button Content="C"/> 
        </StackPanel> 
       </ContextMenu> 
      </ProgressBar.ContextMenu> 
     </ProgressBar> 

在文本菜單我有空間向左和向右我不想要,我在其他帖子中讀到,僅僅刪除這個空間並不簡單。有任何想法嗎?

回答

1

嘗試這樣的:

<ProgressBar x:Name="PgF" Height="10" Value="{Binding Path=FileCurrentMs}" Maximum="{Binding Path=FileLengthMs}"> 
    <ProgressBar.ContextMenu> 
     <ContextMenu> 
      <MenuItem> 
       <MenuItem.Template> 
        <ControlTemplate> 
         <StackPanel Orientation="Horizontal"> 
          <Button Content="A" Margin="2"/> 
          <Button Content="B" Margin="2"/> 
          <Button Content="C" Margin="2"/> 
         </StackPanel> 
        </ControlTemplate> 
       </MenuItem.Template> 
      </MenuItem> 

     </ContextMenu>   
    </ProgressBar.ContextMenu> 
</ProgressBar> 

你需要把所有的按鈕在一個菜單項:)好運氣

相關問題