2011-03-04 80 views
1

嗨,我正面临一个非常奇怪的问题。Silverlight:隐藏RadPaneGroup问题

我的要求是在页面的左侧有一棵树,在页面的右侧有一个视图。点击树的各个节点会显示不同的视图。

我已经实现了这个使用两个拉德窗格组。现在我已经实现了所有的逻辑,并且树节点隐藏或显示了所需的RadPaneGroup,因此我正在走正确的道路。

但问题是,当页面最初加载两个窗格组显示。我想有一个最初隐藏。第二个RadPane组的可见性已折叠,但仍显示出来。我最初如何隐藏rad窗格组之一。

此致

<telerik:RadDocking Grid.Row="2" AllowUnsafeMode="True" BorderThickness="0" Background="#F2F2F3" HasDocumentHost="True" HorizontalAlignment="Stretch" Margin="0,0,0,0" Name="radDocking1" VerticalAlignment="Stretch"> 
      <telerik:RadDocking.DocumentHost> 
       <telerik:RadSplitContainer InitialPosition="FloatingDockable"> 
        <telerik:RadPaneGroup Background="#F2F2F3" Name="redemptionAssignmentViewPaneGroup" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" telerik:ProportionalStackPanel.RelativeSize="400, 200" > 
         <telerik:RadPane Header="Assignment View" CanUserClose="False"> 
         </telerik:RadPane> 
        </telerik:RadPaneGroup> 
        <telerik:RadPaneGroup Visibility="Collapsed" Background="#F2F2F3" Name="redemptionBacthViewPaneGroup" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" telerik:ProportionalStackPanel.RelativeSize="400, 200" BackgroundVisibility="Collapsed"> 
         <telerik:RadPane Header="Assignment View" CanUserClose="False"> 
         </telerik:RadPane> 
         <telerik:RadPane Header="Assignment View" CanUserClose="False"> 
         </telerik:RadPane> 
        </telerik:RadPaneGroup> 
       </telerik:RadSplitContainer> 
      </telerik:RadDocking.DocumentHost> 
      <telerik:RadSplitContainer InitialPosition="DockedLeft" Width="210"> 
       <telerik:RadPaneGroup> 
        <telerik:RadPane Header="Redemption Center Center" CanDockInDocumentHost="True" CanUserClose="False" PaneHeaderVisibility="Visible"> 
         <my:RedemptionTreeView VerticalAlignment="Stretch" x:Name="redemptionTree"/> 
        </telerik:RadPane> 
       </telerik:RadPaneGroup> 
      </telerik:RadSplitContainer> 
     </telerik:RadDocking> 

回答

1

Telerik的说:

的RadPaneGroup控制自动地改变其 Visibility属性时 其可见窗格变化。如果你想 使RadPaneGroup不可见,你只需要 隐藏所有的窗格(到 设置他们的IsHidden属性为真)。 由于RadPaneGroup在内部使用其可见性属性 ,因此 不应自行更改。

RadPanelGroup and Visibility collapsed not working

所以你需要隐藏每个RadPane在RadPaneGroup隐藏RadPaneGroup:

<telerik:RadPaneGroup Background="#F2F2F3" Name="redemptionBacthViewPaneGroup" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" telerik:ProportionalStackPanel.RelativeSize="400, 200" BackgroundVisibility="Collapsed"> 
    <telerik:RadPane IsHidden="True" Header="Assignment View" CanUserClose="False"> 
    </telerik:RadPane> 
    <telerik:RadPane IsHidden="True" Header="Assignment View" CanUserClose="False"> 
    </telerik:RadPane> 
</telerik:RadPaneGroup> 

你也可以做后面的代码:

myRadPaneGroup.HideAllPanes(); 

Hiding All Panes Documentation