我有一個包含在HeaderedContentControl一個TabControl邊框:在WPF 4.0,切換標籤重置用戶控件UI
<Border Grid.Column="1"
Style="{StaticResource MainBorderStyle}">
<HeaderedContentControl
Content="{Binding Path=Workspaces}"
ContentTemplate="{StaticResource WorkspacesTemplate}"
Header="Decision Workspaces"
Style="{StaticResource MainHCCStyle}"/>
</Border>
的TabControl的是在靜態資源定義:
<DataTemplate x:Key="ClosableTabItemTemplate">
<DockPanel Width="120" ToolTip="{Binding Path=DisplayName, Mode=OneTime}">
<Button
Command="{Binding Path=CloseCommand}"
Content="X"
Cursor="Hand"
DockPanel.Dock="Right"
Focusable="False"
FontFamily="Courier"
FontSize="9"
FontWeight="Bold"
Margin="0,1,0,0"
Padding="0"
VerticalContentAlignment="Bottom"
Width="16" Height="16"
/>
<ContentPresenter
Content="{Binding Path=DisplayName, Mode=OneTime}"
VerticalAlignment="Center"
/>
</DockPanel>
</DataTemplate>
<!--
This template explains how to render the 'Workspace' content area in the main window.
-->
<DataTemplate x:Key="WorkspacesTemplate">
<TabControl
IsSynchronizedWithCurrentItem="True"
ItemsSource="{Binding}"
ItemTemplate="{StaticResource ClosableTabItemTemplate}"
Margin="4"
/>
</DataTemplate>
的工作區物業綁定到HeaderedContentControl的Content屬性,它具有一組UserControls,它們在選項卡中呈現。這一切工作正常。
問題是,當我在其中一個UserControl中選擇一個網格中的行時,切換到不同的選項卡,然後返回,所選的行被重置。如果RowDetails處於打開狀態,則會發生同樣的情況 - 當我切換回標籤頁時,它會摺疊。
任何方法?
編輯:看的TabControl的行爲所提出的解決方案之後,我遊蕩,如果我可以完全拋棄它。對於一個UI的任何想法,這將允許我保留幾個相對複雜的UserControl並在它們之間切換,而不是丟失過程中的視覺效果?
謝謝!
我希望我知道這是一個'常見'問題......我想我將不得不看看附加的行爲解決方案。謝謝! – GilShalit