1

我们在主框架窗口中使用 Telerik RadDocking 控件。RadDocking 包含两个 RadSplitContainers,每个容器都有一个 RadPaneGroup 和一个 Rad 面板来显示数据。该应用程序是使用 Prism 和 MEF Container 使用 MVVM 设计模式创建的。

描述:左侧容器永久停靠,使其能够浮动/自动隐藏/关闭。此容器设置为最小宽度和高度。由于没有最大宽度,因此该容器能够填充主框架窗口中的可用空间(例如,当右侧容器中的面板脱离停靠以浮动左侧容器时,会占用所有框架窗口)。正确的容器能够浮动/自动隐藏/关闭。此容器也设置为最小宽度和高度。

问题 1:如果右侧容器移动到最右侧以达到其最小宽度并且主框架窗口恢复/调整大小,则主框架窗口处于全屏状态,则容器不会调整到主框架窗口的大小。这会导致右停靠容器和左停靠容器的某些部分被拖出主框架窗口并且不可见。为了使正确的容器可见,我需要将主框架窗口的大小调整为更大的大小,或者将主框架窗口最大化为全屏。有没有办法根据主框架窗口大小调整容器大小?以便在任何情况下都可以看到带有面板的容器,无论是右停靠的容器移动到最右边到其最小宽度还是左停靠的容器移动到最左边到它的最小宽度。

<telerik:RadDocking x:Name="SiteHomeDockingControl" Grid.Column="0" Grid.ColumnSpan="3" Grid.Row="1" HasDocumentHost="False" 
                    PreviewShowCompass="SiteHomeDockingControl_PreviewShowCompass"  > 

                <telerik:RadSplitContainer telerik:RadDocking.SerializationTag="RadSplitContainerSites" BorderThickness="0"  
                MinWidth="305" MinHeight="305"  telerik:DockingPanel.InitialSize="1000,500"> 
                    <telerik:RadPaneGroup x:Name="RadPaneGroupSites" telerik:RadDocking.SerializationTag="RadPaneGroupSites" BorderThickness="0"> 
                        <telerik:RadPane PaneHeaderVisibility="Collapsed" CanUserClose="False" CanFloat="False" CanUserPin="False" 
                                             telerik:RadDocking.SerializationTag="RadPaneSites" > 
                            <ScrollViewer HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto"> 
                                <Grid VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Margin="35,15,15,15"> 
                                <TextBlock Text="Just an example Docked Pane 1."/> 
                                </Grid> 
                            </ScrollViewer> 
                        </telerik:RadPane> 
                    </telerik:RadPaneGroup> 
                </telerik:RadSplitContainer> 

                <telerik:RadSplitContainer InitialPosition="DockedRight" telerik:RadDocking.SerializationTag="RadSplitContainerPlantHierarchies"
                MinWidth="305" MinHeight="305" telerik:DockingPanel.InitialSize="400,500"> 
                    <telerik:RadPaneGroup telerik:RadDocking.SerializationTag="RadPaneGroupPlantHierarchies"> 
                        <telerik:RadPane telerik:RadDocking.SerializationTag="RadPanePlantHierarchies" Header="Plant Hierarchies"
                        IsHidden="{Binding DataContext.HidePlantHierarchies, ElementName=SiteHomeDockingControl, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"> 
                            <Grid> 
                            <TextBlock Text="Just an example Docked Pane 2."/> 
                            </Grid> 
                        </telerik:RadPane> 
                    </telerik:RadPaneGroup> 
                </telerik:RadSplitContainer> 

</telerik:RadDocking>
4

0 回答 0