我有以下簡化的WPF網格,兩列,每列中有一個按鈕,第一列自動調整大小,並且允許列大小調整。 在拆分器MouseDoubleclick事件上設置事件處理程序。當分離器點擊時左側列中的按鈕被摺疊。WPF網格 - 當內容可見性設置爲可見時,自動調整大小的列不可摺疊。已收錄
現在,因爲第1列是自動調整大小的,而且內容已摺疊,所以我希望在這一點上應該有效地隱藏第1列,但事實並非如此。 儘管其內容已摺疊,但列大小不會更改(記住列是自動大小的)。
對我來說似乎很陌生,我想讓列崩潰 - 任何想法這裏發生了什麼?
<Window x:Class="KingLayout.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
</Grid.RowDefinitions>
<Button x:Name="leftButton">Left</Button>
<Button Grid.Column="1" Margin="5,0,0,0">Right</Button>
<GridSplitter Name="verticalSplitter" ShowsPreview="True" Grid.RowSpan="1" Grid.Column="1" HorizontalAlignment="Left"
VerticalAlignment="Stretch" Width="5" MouseDoubleClick="verticalSplitter_MouseDoubleClick"/>
</Grid>
</Window>
private void verticalSplitter_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
leftButton.Visibility = leftButton.Visibility == Visibility.Visible ? Visibility.Collapsed : Visibility.Visible;
}
問題不在於使用擴展器,而是爲了解決問題。 – esylvestre 2010-07-23 15:38:55
@esylvestre吧? – Carlo 2010-07-23 18:19:45