2009-09-23 63 views
2

我有一個示例Silverlight應用程序,其中包含具有數千個值(〜4000)的組合框。這些值是從Web服務中提取並填充的,這會花費大量時間並呈現UI無響應。具有1000個值的Silverlight組合框

用例: - 需要由用戶
被填充在UI的場 - 場只能有特定的預定值(已存在於數據庫中)
- 該字段中的值不能分組/歸類

你做了什麼或會做:
- 使UI更加敏感,當值在組合框中
得到填充 - 填充組合值儘可能快地

感謝您的閱讀!

更新:

好評!不勝感激!

我編輯了我的帖子來介紹用例。

我能想到的最好的選擇是Google自動建議類文本框,這表明我輸入。

+0

用的是什麼情況,需要價值1000在組合框中?這聽起來像一個組合框可能不是最好的解決方案,我建議你重新考慮設計,而不是優化... – 2009-09-23 17:23:54

+0

有一種叫**可用性**。請首先了解這一點。 – TheVillageIdiot 2009-09-23 17:25:40

+2

這是一個提出問題的地方,如果你有知識的幫助,幫助。不要把它變成一個喊RTFM的地方。 – Nick 2009-09-23 17:34:10

回答

8

考慮使用彈出窗口進行模態搜索以選擇人需要的項目。讓他們輸入一些搜索條件,並在列表框中顯示結果,這應該是一個更合理的數字。

滾動4000個項目在荒謬和滾動條上的拇指將是如此棘手,它基本上是無用的。

你讓他們通過成千上萬的項目搜索,讓他們實際上搜索它然後在對話框中。

+1

+1首先*實際*答案! – mattruma 2009-09-23 17:33:41

+0

@尼克:好建議。雖然不是彈出式對話框,但會輸入一個文本框,在您輸入時自動建議(如Google搜索框)。 – pencilslate 2009-09-23 19:46:43

+0

你比我更瞭解你的問題,但是,這一切都取決於他們將如何尋找他們想要的物品。如果它只是名字,自動完成是真棒。如果他們可能需要除名稱以外的其他標準,則搜索對話框可能會更好。 – Nick 2009-09-23 20:55:27

10

我會避免在首位整個戰局 -

我個人討厭組合框超過約20元。在某個時候,選擇一個更好的用戶界面。

具有4000個元素的組合框會帶來可怕的用戶體驗。重新設計它可以讓用戶更簡單地找到他們想要的東西。

+0

我會投這個更多,但它只讓我做一次。 – 2009-09-23 17:24:11

+0

hehe我們發佈的基本上是一樣的確切的東西..除了你打我吧:( – 2009-09-23 17:24:32

+0

同意。一個組合框聽起來像是錯誤的界面上選擇數以千計的選項 – 2009-09-23 17:24:47

4

嗯,我個人不認爲4000個值的組合框,非常人性化,想象中選擇4000個選擇什麼......

通常,當我有這樣我使用分頁大量的數據。

+0

讓我想起這個老笑話:「我告訴醫生'我這樣做的時候疼,我能做什麼?'他回答說, '停止這樣做'' – 2009-09-23 17:26:18

+0

謝謝,我大聲笑了一下..haha – 2009-09-23 17:29:38

+0

尋找特定選項時尋呼不一定有用。如果他正在使用組合框來達到它的目的,選擇一些東西,那麼不得不翻閱成千上萬的項目並不會更好。 – Nick 2009-09-23 17:33:08

0

有人可以提供除模態搜索之外的替代方案,而不是說組合框不工作。如果用戶不知道要搜索的值,該怎麼辦? 例如試試這個:

 
    private void employeeUserNameTextBox_TextChanged(object sender,TextChangedEventArgs e) 
     { 
      Console.WriteLine("Hello"); 
      //Execute a search like so 
      var query= your stored procedure execution here. 
     } 

very abstract solution but I hope you get the point.