DevExpress Grid Control ile çalışırken, özel bir duruma bağlı olarak dip toplamlara manuel olarak değer atamak bazen gerekli olabilir. Aşağıda, CustomSummaryCalculate olayını kullanarak bu işlemi adım adım gerçekleştirmek için bir rehber bulacaksınız.
Öncelikle, dip toplamları güncellemek istediğiniz durumu belirleyin ve ardından aşağıdaki adımları takip edin:
1. Kolona SummaryItem atama
gridView.Columns["Column Name"].SummaryItem.SummaryType = DevExpress.Data.SummaryItemType.Custom;
Bu kısımda kolona summaryItem ataması yapıyoruz burası veriyi gride attıktan sonra tanımlanabilir.
2. Veriyi Güncelle
gridView.RefreshData();
gridView.UpdateTotalSummary();
İlk olarak, veriyi güncelleyerek ve toplam özetleri güncelleyerek işe başlıyoruz. Burada güncellemez isek istediğimiz event tetiklenmiyor. Bu kısmı 1. SummaryItem leri tanımladıktan sonra yapmak gerekmektedir.
3. CustomSummaryCalculate Eventini kullanma
private void dgDetay_CustomSummaryCalculate(object sender, CustomSummaryEventArgs e)
{
//manuel olarak dip toplamlara değer vermek için
GridView view = sender as GridView;
if (e.SummaryProcess == CustomSummaryProcess.Finalize)
{
GridColumnSummaryItem summaryItem = e.Item as GridColumnSummaryItem;
if (summaryItem != null && summaryItem.FieldName.ToString() == "Column Name")
{
// Burada istediğiniz özel toplam değerini hesaplayabilir ve atayabilirsiniz.
string customTotal = “Bu Değeri Göster”;// Örnek bir özel toplam değeri
e.TotalValue = customTotal;
e.TotalValueReady = true;
}
}
}
Bu kısmda ilk adımdaki tetiklemelerden sonra bu evente düşüyoruz ve içerisinde değer atabiliyoruz.
İşemler işte bu kadar. artık manuel olarak gridviewde summaryitem dip toplam kısmına bir değer vermiş oluyoruz.