• <menu id="w2i4a"></menu>
  • logo DevExpress WPF使用技巧教程

    文檔首頁(yè)>>DevExpress WPF使用技巧教程>>DevExpress WPF使用技巧教程:TreeListView - 如何快速更新多個(gè)項(xiàng)目屬性

    DevExpress WPF使用技巧教程:TreeListView - 如何快速更新多個(gè)項(xiàng)目屬性


    DevExpress廣泛應(yīng)用于ECM企業(yè)內(nèi)容管理、 成本管控、進(jìn)程監(jiān)督、生產(chǎn)調(diào)度,在企業(yè)/政務(wù)信息化管理中占據(jù)一席重要之地。通過(guò)DevExpress WPF Controls,您能創(chuàng)建有著強(qiáng)大互動(dòng)功能的XAML基礎(chǔ)應(yīng)用程序,這些應(yīng)用程序?qū)W⒂诋?dāng)代客戶的需求和構(gòu)建未來(lái)新一代支持觸摸的解決方案。 無(wú)論是Office辦公軟件的衍伸產(chǎn)品,還是以數(shù)據(jù)為中心的商業(yè)智能產(chǎn)品,都能通過(guò)該控件來(lái)實(shí)現(xiàn)。

    本文主要為大家介紹在TreeListView中如何快速的更新多個(gè)項(xiàng)目的屬性。在接下來(lái)的系列文章中,小編將為大家介紹一些DevExpress WPF控件的使用技巧和提示,希望能幫助到大家!

    DevExpress WPF Controls 下載

    問(wèn)題:

    在更新100 000樹列表項(xiàng)的屬性時(shí),性能比較差。即使從treelist.ItemsSource屬性中刪除數(shù)據(jù)源,TreeList仍會(huì)處理PropertyChanged事件,并使性能較差。接下來(lái),嘗試在性能分析器中檢查結(jié)果:

    1. BeginDataUpdate() / end - 沒(méi)有效果,但是DX PropertyChanged處理仍然是瓶頸;
    2. BeginInit() / end - 同樣的問(wèn)題;
    3. ItemsSource = null - DXTree仍處理已刪除項(xiàng)目的PropertyChanged;
    4. 刪除tree branch  - DXTree仍處理已移除項(xiàng)目的PropertyChanged;
    5. 停止提高PropertyChanged并最終重置ItemsSource - 獲得了100倍的性能提升,但是丟失視圖狀態(tài),這樣的解決方案非常粗糙。

    解決方案:

    TreeListView的內(nèi)部控制器由于BeginDataUpdate / EndDataUpdate方法調(diào)用而不會(huì)更新其排序和篩選,但仍可跟蹤屬性更改。要臨時(shí)凍結(jié)更新而不丟失TreeListView的狀態(tài),可以使用BindingList

    //private ObservableCollection list = new ObservableCollection();
    
      private BindingList list = new BindingList();
      
    
      private void Update1()
    
      {
    tree.BeginDataUpdate();
    list.RaiseListChangedEvents = false;
    foreach (var fakeItem in list)
    {
    fakeItem.Checked = true;
    }
    list.RaiseListChangedEvents = true;
    tree.EndDataUpdate();
    }

    DevExpress·1024程序員節(jié)火熱開啟!致敬改變世界的程序猿!

    DevExpress中文網(wǎng)官網(wǎng)QQ群:540330292      歡迎一起進(jìn)群討論

    掃描關(guān)注DevExpress中文網(wǎng)微信公眾號(hào),及時(shí)獲取最新動(dòng)態(tài)及最新資訊

    DevExpress中文網(wǎng)微信
    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();