我正面臨性能問題,擁擠的組合框(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