Telerik控制可见性

时间:2012-06-11 07:18:17

标签: c# .net silverlight-4.0 telerik silverlight-5.0

<Grid x:Name="LayoutRoot" Background="White">


    <telerik:RadTabControl Foreground="Black" TabOrientation="Horizontal" TabStripPlacement="Left" Grid.Row="0" Grid.Column="0">
        <telerik:RadTabItem Header="Tab Item A" Visibility="Collapsed" />
        <telerik:RadTabItem Header="Tab Item D" Visibility="Collapsed" />

    </telerik:RadTabControl>


</Grid>

上面的代码在我的应用程序中引发错误。问题是

  <telerik:RadTabItem Header="Tab Item A" Visibility="Collapsed" />
  <telerik:RadTabItem Header="Tab Item D" Visibility="Collapsed" />

如果我有至少一个可见的标签控件,我的应用程序加载正常,否则会抛出异常并使我的应用程序崩溃。

例外:

“未处理的异常 - System.InvalidOperationExdeption:UIElement.Arrange(finalRect)无法在finalRect中使用无限或NaN值调用”

跟踪:

Microsoft JScript runtime error: Unhandled Error in Silverlight Application 
Code: 4004    
Category: ManagedRuntimeError       
Message: System.InvalidOperationException: UIElement.Arrange(finalRect) cannot be     called with Infinite or NaN values in finalRect. 
   at System.Windows.UIElement.Arrange(Rect finalRect)
   at Telerik.Windows.Controls.Primitives.TabStripPanel.ArrangeOverride(Size finalSize)
   at System.Windows.FrameworkElement.ArrangeOverride(IntPtr nativeTarget, Single     inWidth, Single inHeight, Single& outWidth, Single& outHeight)     

有什么想法吗?我无法在我的应用程序之外重现这一点。

1 个答案:

答案 0 :(得分:0)

异常表示布局系统无法计算UIElement的大小。 如您所见,如果没有可见的标签项,则会出现在XAML中。

因此,如果可以,请为制表符控件指定固定大小(宽度= XXX)。

否则,尝试折叠整个选项卡控件而不是所有单个选项卡。