- N +

wpf datagrid wpf 第三方免費 datagrid

大家好,今天小編來為大家解答wpf這個問題,datagrid很多人還不知道,現在讓我們一起來看看吧!

如何在datagrid中實現數據的增,刪和修改

這是一個檢查修改狀態的問題。 這個問題在winform時代已經有很成熟的處理方法了 那個年代的主要處理方法是使用dataset/table/row來跟蹤是否修改, 只要任何一個字段被修改過,那么這一行Datarow.RowState就會修改為modified 新增的行會標記為Added 將要刪除的行標記為Deleted 等等。 這樣dataset在update的時候只需要根據不同的rowstate生成不同的語句,把改動的部分提交即可。 你的這個場景我的建議是這樣的。

讓你的Entity實現INotifyPropertyChanged(注意輸入和原來值相等的話不要fireevent)

ViewModel里面建立一個Dictionary<Entity,System.Data.DataRowState>track;

讓每個EntitypropetyChanged事件里面都在track里面增加/修改當前記錄的狀態。

如果你的這個Entity集合放在ObservableCollection<TEntity>里面就更好了,訂閱CollectionChanged事件,如果是新增的實體就標記為added如果是刪除的實體就標記為deleted

這樣你提交的時候只需要把track里面的東西過濾一下就可以了。 如果你的客戶端是WPF比較寬松,也可以不用INPC,直接使用ef的tracker

自己new一個dbcontext

然后把Entity全都attach進去。這樣修改就自動進行track了。

dbcontext.Add()/dbcontext.Delete啥的不多說

然后呢,只需要訪問dbcontext的ChangeTracker屬性就可以找到各種變更集合

做windows界面,用QT還是MFC

使用Qt吧,前提是在這兩者下進行選擇。既然提到了Qt和MFC,我想題主肯定是一個C++的開發者。其實,在我看來,Windows下開發界面程序,還有很多其他的選擇。下面我就連同Qt、MFC一起來介紹一下幾種常用的界面開發框架。

Qt,Qt之前是被諾基亞作為塞班操作系統的主力開發工具,后被廣泛應用于PC領域的開發。Qt最大的優勢在于它的跨平臺特性,可以實現一套代碼編寫不同平臺下的應用程序,目前多用于Linux系統下的GUI程序開發,Windows下也有一些使用。

MFC.MFC的全稱叫做MicrosoftFoundationClass(微軟基礎類庫),它是將Windows的基礎api封裝后的一個GUI開發框架。它最大的優勢是可以直接使用Windows的系統api,實現程序性能的最大化。它的劣勢在于邏輯太過復雜,會讓初學者望而卻步,事實上,很多大學計算機課堂上都已經不在講授mfc(MFC背戲稱為沒飯吃)了。

C#.咦,不是在講C++嗎,事實上,很多Windows下的程序都是使用C#快速開發出界面,在用C++實現后臺控制,這樣既能快速開發出好看美觀的界面(C#優勢所在),又能實現高效的后臺(C++的優勢),豈不快哉。

WEB.既然C#都能開發GUI,那么比C#語法還要簡單的web開發語言不行嗎?當然可以了。這里舉個栗子,大名鼎鼎的PC端詞典軟件有道英語詞典正是WEB&C++搞定的。網易的大牛們使用WEB(如HTML5)技術快速開發出酷炫的界面以及網絡通信模塊,再用c++實現算法及其他控制模塊,就這樣最大限度的實現了界面的美觀性和程序性能的整合。

當然,Windows下的界面開發技術還有很多,歡迎大家關注太科羅技,并在下方積極留言討論。

wpf數據顯示控件是哪個

可以考試使用DataGridView控件,這個是用于winform開發的,而GirdView是用于web開發的。

Wpf可以整合winfom進行開發,如果不想整合winform可以考慮使用DataGrid控件,三者使用都是十分相似的。

在wpf還有Grid也是一個不錯的選擇,但是與DataGrid他們完全不同的了,適合用于類似文件夾列表那種格式的,且與數據庫沒有關系。

所以我的建議是在wpf中使用DataGrid,在winform中使用DataGridView,在web中使用GridView。其他的你可以自己行考慮。

c# wpf DataGrid使用模板列橫向滾動條不能顯示

默認一定能夠顯示的,我指的是datagrid里的橫向滾動條。因為打開datagrid模板你會發現里面有一個scrollview的。我不能確定樓主所指的滾動條是指datagrid的還是自己在模板列里自己定義的

關于wpf到此分享完畢,希望能幫助到您。

返回列表
上一篇:
下一篇: