Solved

Changing summary value for UltraWinGrid

Posted on 2009-03-31
5
5,339 Views
Last Modified: 2013-11-15
I am using ultrawingrid which summary enabled showing the sum of the column. Now I want to make the summary value to zero and it should show only tthe sum of those rows which i select using check box.
0
Comment
Question by:srikanthreddyn143
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
5 Comments
 
LVL 17

Accepted Solution

by:
ZeonFlash earned 125 total points
ID: 24033447
The summary value in a column is a read-only property, so you can't just force it to be a value.  Instead, you can create a custom summary calculator.

The following example assumes you have a column "Selected" (boolean) and a column "ValueColumn" (decimal).  After you check/uncheck the Selected cell, it will automatically re-calculate the summary (if it's in view)
	Private Class MyCustomSummarySettings
		Implements ICustomSummaryCalculator
 
		Private decTotal As Decimal = 0.0
 
		Public Sub New()
		End Sub
 
		'Reset the summary total
		Private Sub BeginCustomSummary(ByVal summarySettings As SummarySettings, ByVal rows As RowsCollection) Implements ICustomSummaryCalculator.BeginCustomSummary
			decTotal = 0
		End Sub
 
		'Perform the summary 
		Private Sub AggregateCustomSummary(ByVal summarySettings As SummarySettings, ByVal row As UltraGridRow) Implements ICustomSummaryCalculator.AggregateCustomSummary
			If Not row.Cells("Selected").Value Then Exit Sub
 
			Try
				decTotal += Convert.ToDecimal(row.GetCellValue(summarySettings.SourceColumn))
			Catch ex As Exception
				MsgBox("Error converting cell value to decimal", MsgBoxStyle.Critical)
			End Try
		End Sub
 
		'Return the summary value
		Private Function EndCustomSummary(ByVal summarySettings As SummarySettings, ByVal rows As RowsCollection) Implements ICustomSummaryCalculator.EndCustomSummary
			Return decTotal
		End Function
	End Class
 
	Private Sub UltraGrid1_InitializeLayout(ByVal sender As Object, ByVal e As Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs) Handles UltraGrid1.InitializeLayout
		Dim summary As Infragistics.Win.UltraWinGrid.SummarySettings
 
		'Create a new summary object for the band
		summary = UltraGrid1.DisplayLayout.Bands(0).Summaries.Add("CustomSummary")
 
		summary.SummaryType = SummaryType.Custom
		summary.SourceColumn = UltraGrid1.DisplayLayout.Bands(0).Columns("ValueColumn")
		summary.CustomSummaryCalculator = New MyCustomSummarySettings
	End Sub

Open in new window

0
 
LVL 11

Author Comment

by:srikanthreddyn143
ID: 24034236
Hi Zeon,

Thanks for your reply.It was throwing an exception "Cannot convert 'True' to Long" when i used code in this way.

 'Perform the summary 
    Private Sub AggregateCustomSummary(ByVal summarySettings As SummarySettings, ByVal row As UltraGridRow) Implements ICustomSummaryCalculator.AggregateCustomSummary
        Try
            If Not row.Cells("CB").Value.ToString Then
                Exit Sub
            Else
                decTotal += Convert.ToDecimal(row.Cells("Amount").Value)
            End If
        Catch ex As Exception
            ExceptionManager.Publish(ex)
        End Try
    End Sub

Open in new window

0
 
LVL 11

Author Comment

by:srikanthreddyn143
ID: 24034252
It was throwing exception At line "If Not row.Cells("CB").Value"
0
 
LVL 11

Author Comment

by:srikanthreddyn143
ID: 24034831
Thanks.
Its working fine when i kept "If Not row.Cells("CB").Value = "True" Then ". But how can I have the summary as a footer. Right now it is scrolling with the datagrid.
0
 
LVL 11

Author Comment

by:srikanthreddyn143
ID: 24038702
Thank you. Thats fine.
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
eclipse error 7 108
eclipse luna javeEE perspecive missing 5 118
Eclipse MARs unable to start with exit code=13 2 90
Unable to open debugger port in Intellij idea 6 455
Jaspersoft Studio is a plugin for Eclipse that lets you create reports from a datasource.  In this article, we'll go over creating a report from a default template and setting up a datasource that connects to your database.
How to install Selenium IDE and loops for quick automated testing. Get Selenium IDE from http://seleniumhq.org Go to that link and select download selenium in the right hand columnThat will then direct you to their download page.From that page s…
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
The viewer will learn how to use and create new code templates in NetBeans IDE 8.0 for Windows.

756 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question