我在最新的Catel版本上遇到了性能问题。我之前使用的是4.2.0-unstable0127
,现在正尝试升级到4.4.0
最有可能的问题是Catel的TabControl。
我有以下代码(在4.2.0上非常快地切换选项卡):
<catel:TabControl
Margin="0"
Padding="0"
BorderThickness="0"
ItemsSource="{Binding Screens}"
LoadTabItems="EagerLoading"
SelectedItem="{Binding ActiveView}">
<TabControl.ItemContainerStyle>
<Style TargetType="{x:Type TabItem}">
<Setter
Property="Visibility"
Value="Collapsed" />
</Style>
</TabControl.ItemContainerStyle>
<TabControl.ContentTemplate>
<DataTemplate DataType="interfaces:IScreenModule">
<ContentPresenter
Content="{Binding Presenter}"
DataContext="{Binding ViewModel}" />
</DataTemplate>
</TabControl.ContentTemplate>
</catel:TabControl>
我的IScreenModule是一个在构造函数中创建Presenter和ViewModel的类。
使用此代码,更改选项卡不会处理Catel内容的所有初始化/取消初始化。
升级到4.4.0
后,更改标签会失去很多性能。它正在注册/取消注册标签更改等视图。
Catel有没有变化,我没注意到?或者它在那里打破了?