با سی شارپ WPF ابتدا از جدول مشتریان (کالا هایی که مشتریان خریداری کردند) که اسمش هست : Factor دیتاها رو از لیستی از نوع ObservbleCollection لود میکنم توی DataGrid
دیتا گرید یه ستون از نوع DataGridComboBoxColumn داره که آیتم های اون (ItemSource) جداگانه از جدول کالا ها Commodity (Select * From Commodity) از نوع ObservbleCollection پر میشه
پس آیتم های دیتاگرید و ستون داخل اون دیتا گرید جدا از هم پر میشن ولی چیزی که ردیف های ستون کمبوباکس نمایش میده مرتبط به مقدار پر شده در دیتا گرید هستش (ComboBox.SelectedValue)
من داخل رویداد RowEndEditing عملیات Insert رو انجام میدم
و در نهایت میخوام فقط دیتای DataGrid رو با خواندن دیتا مجدد از SQL Server اون رو بروز کنم : (SELECT * FROM Factor)DataGrid.Itemsource
مشکل اینه که DataGridComboBoxColumn که در ابتدا به صورت جداگانه در لودینگ پرش کرده بودم مجددا (بدون اینکه من اصلا کویری بزنم یا مستقیا با آیتم هاش کاری داشته باشم) خود لیست متصله شروع میکنه به رفرش کردن تک به تک آیتم هاش یعنی صدا زدن {get;set} مربوط به Commodity (انگار که دوباره لیست کمبوباکس رو از اول دارم پر میکنم ) و این باعث میشه برنامه خیلی کند بشه , درحالی که فقط آیتم های دیتاگرید رو مجددا داخلش قرار دادم و اصلا کاری به لیستی که ستون کمبوباکس داره نداشتم
منظورم اینه :
چطور میتونم جلوی این کار رو بگیرم ؟
سورس کامل + دیتابیس : Full Source Code
لینک مرتبط : How can I prevent the ObservableCollection from being refreshed for no reason in WPF?
دوستان یه لینک هست که دقیقا مشکل من رو داره :WPF - Prevent bindings from updating while loading data
منتها جوابی که دادن در مورد sealed class رو کامل متوجه نشدم !
کسی میتونه توضیح بده ؟
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1157
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
595
- پاسخ :
1
|
تاریخ :
1403/07/13
- ساعت :
12:06:00 PM
- بازدید :
346
- پاسخ :
1
|
تاریخ :
1403/06/24
- ساعت :
08:52:00 PM
- بازدید :
309
- پاسخ :
1
|
تاریخ :
1398/09/14
- ساعت :
01:58:00 PM
- بازدید :
4263
- پاسخ :
1
|
تاریخ :
1398/09/16
- ساعت :
11:41:00 AM
- بازدید :
4279
- پاسخ :
1
|
تاریخ :
1398/09/07
- ساعت :
02:15:00 PM
- بازدید :
3874
- پاسخ :
5
|
تاریخ :
1403/05/16
- ساعت :
05:43:00 AM
- بازدید :
654
- پاسخ :
0
|
تاریخ :
1398/09/05
- ساعت :
06:04:00 PM
- بازدید :
3170
- پاسخ :
2
|
تاریخ :
1398/09/08
- ساعت :
11:38:00 PM
- بازدید :
3250
- پاسخ :
1
|
تاریخ :
1403/08/29
- ساعت :
07:15:00 PM
- بازدید :
55
- پاسخ :
0
|
تاریخ :
1403/08/18
- ساعت :
10:40:00 AM
- بازدید :
93
- پاسخ :
0
|
تاریخ :
1402/07/23
- ساعت :
04:01:00 PM
- بازدید :
1031
- پاسخ :
1
|
تاریخ :
1403/05/30
- ساعت :
09:22:00 AM
- بازدید :
426
- پاسخ :
1
|
تاریخ :
1402/08/01
- ساعت :
06:25:00 PM
- بازدید :
930
- پاسخ :
1
|
تاریخ :
1402/08/16
- ساعت :
10:38:00 AM
- بازدید :
1347
- پاسخ :
1
|
تاریخ :
1398/08/17
- ساعت :
01:27:00 AM
- بازدید :
4796
- پاسخ :
1
|
تاریخ :
1402/09/08
- ساعت :
07:34:00 PM
- بازدید :
1157
- پاسخ :
1
|
تاریخ :
1402/09/21
- ساعت :
11:10:00 PM
- بازدید :
595
- پاسخ :
1
|
تاریخ :
1403/07/27
- ساعت :
03:21:00 PM
- بازدید :
205
- پاسخ :
1
|