2011-08-15 112 views
0

從桌面應用程序的引用/查找表加載下拉列表的最佳方式是什麼?加載下拉列表

該應用程序分爲3層。我已經建立了我的實體。

前端有一個帶有6個選項卡的表單。和一個大的保存(另一個討論:)

當我最初加載窗體時,我應該加載它們嗎?有沒有我可以使用的緩存機制?

它是由多個用戶訪問的網絡驅動器上的vb.net應用程序。

還值得注意的是,一些參考表可能會更新。通過另一種形式。

感謝 牛逼

回答

0

很多因素。你需要在構造函數中填充數據,以便填充可視元素。注意,僅僅因爲選項卡不可見並不意味着它在您的應用程序啓動時未加載。

對於字符串

public class Library : INotifyPropertyChanged 
    { 
     private List<string> dropDown1; 

     public List<string> DropDown1 { get { return dropDown1; } } 

     public Library() 
     { 
      // use data reader to populate dropDown1 
     } 
    } 

的靜態列表我知道這會得到可以使用的東西輕於表意見,但名單有很多不錯的功能,方便的語法,易於填充。作爲下一步,您可以將其構建爲客戶端服務器,並使用一些靜態方式,以便列表只填充一次,然後由所有人共享。如果你有更多的屬性,然後用類替換字符串。對於動態列表,然後在獲取您從表中按需獲取當前數據。在你得到你可以堅持到最後一個列表,如果下一個請求是在X秒內,然後返回陳舊的數據。這取決於陳舊的數據是否可以接受。

還有很多其他的方法,我不假裝這是最好的。只是舉出一個相對簡單的例子來讓你開始。

當它變得分層時,事情會變得更復雜一些。您可以使用ADO.NET表來存儲靜態相關數據,然後在視圖上應用過濾器。

+0

感謝BB。我將在啓動時加載它們。在對WPF中的組合框進行了一些調整之後,它們的加載速度非常快,並且在某些情況下加載了多個列(這是一個很好的功能) – TeddyRuxpin

+0

@TeddyRuxpin您可以標記爲是因爲您要使用它嗎? – Paparazzi

0

如果一個網頁你沒有加載在頁面加載所有選項卡。 桌面我覺得它會更容易,它應該是這樣的。

只有當用戶單擊該選項卡時才顯示該頁面並隱藏與其他選項卡關聯的所有頁面 。

我希望所有標籤頁的值都會在會話中,以便用戶可以返回到最後的任何標籤和您的Big Save。

你的問題有用的東西相關的,我發現這裏

http://www.syncfusion.com/FAQ/windowsforms/faq_c93c.aspx

one more

+0

標籤是wpf。很確定這不是一個aspx應用程序。如果這是一個aspx問題,它需要重新標記。 – Paparazzi

+0

它不是一個aspx。因爲我提到它是一個桌面應用程序。 – TeddyRuxpin