我正面临性能问题,拥挤的组合框(5000个项目)。下拉列表的渲染速度非常慢(就好像它在显示任何内容之前计算了全部项目)。Silverlight组合框性能问题
你有什么诀窍可以让这个下拉菜单显示为懒惰吗?
XAML代码:
<Grid x:Name="LayoutRoot">
<StackPanel Orientation="Horizontal" Width="200" Height="20">
<TextBlock>Test Combo </TextBlock>
<ComboBox x:Name="fooCombo" Margin="5,0,0,0"></ComboBox>
</StackPanel>
</Grid>
代码后面:
公共的MainPage() { 的InitializeComponent();
List<string> li = new List<string>();
int Max = 5000;
for (int i = 0; i < Max; ++i)
li.Add("Item - " + i);
fooCombo.ItemsSource = li;
}
嗯,好像是在ComboBox UI虚拟化a bug,所以一个autocompletebox应该要走的路。
这的确是一种解决方法,我会考虑这一点。 – Vinzz 2010-06-08 14:21:19
@Vinzz:不知道是否有一个真正的解决方案(如果这只是一个解决方法),因为需要填充100个组合框,更不用说1000个项目,这首先不是一个很好的UI设计决策。 – AnthonyWJones 2010-06-08 14:30:37