2010-06-26 88 views
5

我想創建一個WPF數據庫應用程序。似乎有幾個很好的組件可用於在數據庫表中顯示數據。 ListViewGridView似乎很受歡迎。但對於新手來說,很難看出他們之間的區別。WPF中ListView和GridView有什麼區別?

ListViewGridView有什麼區別?優缺點都有什麼?

回答

6

ListView是一個派生自ListBox的WPF控件,(理論上)可以使用從ViewBase派生的幾種視圖模式之一來呈現項目。 GridView是唯一實現的。換句話說,它不是ListView或GridView的選擇。如果你想在一個ListView中顯示錶格數據,你可以創建一個ListView並將其視圖設置爲一個GridView(它定義了列布局)。

但是,現實是,據我所知,沒有其他意見得以實施。而且因爲ListView不是一個功能豐富的控件,所以它在很大程度上已經過時了。實際上,Silverlight甚至不提供ListView。

有一個DataGrid控件與Silverlight DataGrid控件的功能和API非常接近,您應該使用它而不是ListView。

5

ListView是保持數據的對象:

ListView的是一個ItemsControl,這意味着它可以包含任何類型的對象(例如字符串,圖像或面板)的集合。有關更多信息,請參閱ItemsControl類。

ListView中數據項的表示由其視圖模式定義,View模式由View屬性指定。 Windows Presentation Foundation(WPF)提供了一種GridView視圖模式,可將ListView數據項內容分割爲多列。 GridView上的屬性和方法及其相關的類風格並指定列的內容。

GridView控制如何將數據表示爲:

表示顯示數據項列ListView控件的視圖模式。

GridView類及其支持類提供基礎結構以顯示在一系列列中爲ListView控件指定的數據項。