亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

設置沒有被調用

設置沒有被調用

C#
Helenr 2021-06-20 16:23:10
在我的 C# WPF 應用程序中,我有以下內容:    ObservableCollection<SpecialtyFees> _SpecialtyFeeEGG;    public ObservableCollection<SpecialtyFees> SpecialtyFeeEGG    {        get { return _SpecialtyFeeEGG; }        set        {            if (_SpecialtyFeeEGG == value)                return;            _SpecialtyFeeEGG = value;            RaisePropertyChanged("SpecialtyFeeEGG");        }    }執行以下行時,將調用 SET 方法,如我所料:        SpecialtyFeeEGG = new ObservableCollection<SpecialtyFees>();但是,稍后在代碼中,將 specialFee 添加到 SpecialtyFeeEGG 時,它不會被調用,我希望它會被調用。我錯過了什么?        foreach (var item in Specialties)        {            SpecialtyFees specialtyFee = new SpecialtyFees();            specialtyFee.SpecialtyCode = item.SpecialtyCode;            specialtyFee.CurrentTotal = 0;            specialtyFee.BidTotal = 0;            specialtyFee.BidDifference = 0;            if (specialtyFee.SpecialtyCode.Length == 3)            {                SpecialtyFeeEGG.Add(specialtyFee);            }        }
查看完整描述

3 回答

?
qq_花開花謝_0

TA貢獻1835條經驗 獲得超7個贊

正確的使用ObservableCollection方法如下:


private ObservableCollection<SpecialtyFees> _SpecialtyFeeEGG 

   = new ObservableCollection<SpecialtyFees>();


public ObservableCollection<SpecialtyFees> SpecialtyFeeEGG

{

    get { return _SpecialtyFeeEGG; }

}

在 WPF 中使用綁定時,每次對綁定源進行更改時都需要通知。否則(例如這種情況)該值始終指的是在構造函數或字段初始值設定項 ( new ObservableCollection<SpecialtyFees>()) 中指定的值。而且由于您不需要更改源,可觀察集合將負責對集合所做的添加/刪除/更改。


在這種情況下也不需要 Set 方法RaisePropertyChanged。但是,只有當您必須更改源時,它才會按您預期的那樣處理集合源的更改。


查看完整回答
反對 回復 2021-06-26
?
DIEA

TA貢獻1820條經驗 獲得超2個贊

您只能編輯對象,而不是對該特定對象的指針/引用。這與說您有列表 x 相同。如果你設置x = new List();你實際上制作了一個新列表。當向這個列表添加一些東西時,x 的引用地址不會改變。而 x 的內容是。


查看完整回答
反對 回復 2021-06-26
?
慕俠2389804

TA貢獻1719條經驗 獲得超6個贊

ObservableCollection<SpecialityFees>對象實際上并沒有改變,您只是向它的項目添加了內容,因此它不會set在對象本身上觸發該方法。

您將需要使用該SpecialityFeeEGG_CollectionChanged方法來捕獲對集合的添加。


查看完整回答
反對 回復 2021-06-26
  • 3 回答
  • 0 關注
  • 132 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號