我有一個(右向)擴展器,它應該在展開時隱藏頭部,並且在摺疊時顯示一些旋轉到垂直向下的文本。 我設法這個使用下面的代碼來實現:擴展器頭部的旋轉文本的寬度不正確
<Expander Grid.Column="1" ExpandDirection="Left"
IsExpanded="True" Name="rightHandExpander"
MaxWidth="{Binding RelativeSource={RelativeSource PreviousData}}">
<Expander.Header>
<TextBlock Text="Header text" RenderTransformOrigin="0,0"
Visibility="{Binding IsExpanded, RelativeSource={RelativeSource
AncestorType={x:Type Expander}, Mode=FindAncestor},
Converter={StaticResource boolToVisibilityConverter}}">
<TextBlock.LayoutTransform>
<TransformGroup>
<RotateTransform CenterX="25" CenterY="25" Angle="90" />
</TransformGroup>
</TextBlock.LayoutTransform>
</TextBlock>
</Expander.Header>
<!-- controls here -->
</Expander>
然而,當擴張器崩潰,頭佔用了太多的佔用空間文本旋轉,但頭部的寬度似乎仍然如同它沒有。
在代碼隱藏中使用VisualTreeHelper,我發現擴展器的頭部,邊框和dockpanel太大,但內部切換按鈕的大小正確。我嘗試將標題,邊框和dockpanel的寬度設置爲正確的大小,但它們沒有改變。
任何人都可以幫忙嗎?
編輯: 膨脹機被包含在一個網格中,兩列有一個網格分離器和另一個在第一列的膨脹器。另一個膨脹機做同樣的事情,但倒塌到左側 - 然而,這個膨脹機似乎正常工作。
你可以在代碼中發佈一些關於如何將擴展器設置到容器(一個網格,也許我看到Grid.Column)的代碼。 – michele 2012-08-01 10:12:24
添加了對該帖子的修改:) – jess 2012-08-01 10:26:07
如果你將自己的擴展器放在頁面/窗口中,它的行爲如何? 'Grid'控件可能會擴展你的'Expander'以適應列的大小。 – 2012-08-01 11:08:30