2011-11-07 40 views
1

我有一些DevExpress BarButtonItem層疊在一起。所以我需要確保它們具有相同的寬度(例如,如果內容更長或更短,按鈕會在真實和錯誤的可見度之間「轉移」)。如何添加樣式到DevExpress BarButtonItem?

但我想不出如何將寬度屬性添加到BarButtonItem。我嘗試了以下,但它不起作用,BarButtonItem沒有寬度屬性。

<dxb:BarButtonItem x:Name="btn1" Content="Foo"> 
    <dxb:BarButtonItem.Style> 
     <Setter Property="Width" Value="100" /> 
    </dxb:BarButtonItem.Style> 
<dxb:BarButtonItem> 

回答

6

有指定BarButtonItem寬度和高度沒有直接的方法,但你可以通過BarButtonItem.ContentTemplate屬性指定的BarButtonItem.Content寬度或高度:

<dxb:BarManager Name="barManager" CreateStandardLayout="True"> 
    <dxb:BarManager.Resources> 
     <DataTemplate x:Key="RedBarButtonItemContentWithFixedWidth"> 
      <Border Background="Red" Width="100"> 
       <ContentPresenter Content="{Binding}"/> 
      </Border> 
     </DataTemplate> 
    </dxb:BarManager.Resources> 
    <dxb:BarManager.Items> 
     <dxb:BarButtonItem x:Name="btn1" Content="Foo" 
      ContentTemplate="{StaticResource RedBarButtonItemContentWithFixedWidth}"/> 
     ... 
+0

任何想法,爲什麼這隻能當色帶風格引用btn1的BarItemLink設置爲SmallWithText?以下BarItemLink將顯示正確的tempalate:但這不會: ihake