Occurs when the size of XLS / CSV file in reading / writing is near
GemBox.Spreadsheet Free limit. (Free version only)
Namespace: GemBox.SpreadsheetAssembly: GemBox.Spreadsheet (in GemBox.Spreadsheet.dll) Version: 35.0.30.1025
Syntax
| C# |
|---|
public event LimitEventHandler LimitNear |
| Visual Basic |
|---|
Public Event LimitNear As LimitEventHandler |
Remarks
This event is present only in Free version.
This event is fired when 80% of maximum row count per worksheet is reached (150 * 0.8 = 120 rows) or when 5 worksheets are used.
This event is not fired if LimitReached event is fired.
You can use this event to detect when your application is close to GemBox.Spreadsheet Free limit. For example, you can write number of used rows to a log file or send a notification e-mail.
Examples
Following code demonstrates how to handle LimitNear
and LimitReached events in GemBox.Spreadsheet Free.
This sample disables warning worksheet in LimitNear event
handler and displays console messages in
LimitReached event handler.
CopyVB.NET
CopyC#
Sub Main() Dim ef As ExcelFile = New ExcelFile AddHandler ef.LimitNear, AddressOf ef_LimitNear AddHandler ef.LimitReached, AddressOf ef_LimitReached Dim ws As ExcelWorksheet = ef.Worksheets.Add("Sheet1") Dim i As Integer For i = 0 To 172 - 1 Step i + 1 ws.Cells(i, 0).Value = i Next ef.SaveXls("Test.xls") End Sub Private Sub ef_LimitNear(ByVal sender As Object, ByVal e As LimitEventArgs) e.WriteWarningWorksheet = False End Sub Private Sub ef_LimitReached(ByVal sender As Object, ByVal e As LimitEventArgs) Select Case e.Operation Case IoOperation.XlsReading Console.WriteLine("Data truncated while reading XLS file: " + e.FileName) Case IoOperation.CsvReading Console.WriteLine("Data truncated while reading CSV file: " + e.FileName) Case IoOperation.XlsWriting Console.WriteLine("Data truncated while writing XLS file: " + e.FileName) e.WriteWarningWorksheet = False Case IoOperation.CsvWriting Console.WriteLine("Data truncated while writing CSV file: " + e.FileName) End Select End Sub
static void Main(string[] args) { ExcelFile ef = new ExcelFile(); ef.LimitNear += new LimitEventHandler(ef_LimitNear); ef.LimitReached += new LimitEventHandler(ef_LimitReached); ExcelWorksheet ws = ef.Worksheets.Add("Sheet1"); for(int i=0; i!=172; i++) ws.Cells[i, 0].Value = i; ef.SaveXls("Test.xls"); } private static void ef_LimitNear(object sender, LimitEventArgs e) { e.WriteWarningWorksheet = false; } private static void ef_LimitReached(object sender, LimitEventArgs e) { switch(e.Operation) { case IoOperation.XlsReading: Console.WriteLine("Data truncated while reading XLS file: " + e.FileName); break; case IoOperation.CsvReading: Console.WriteLine("Data truncated while reading CSV file: " + e.FileName); break; case IoOperation.XlsWriting: Console.WriteLine("Data truncated while writing XLS file: " + e.FileName); e.WriteWarningWorksheet = false; break; case IoOperation.CsvWriting: Console.WriteLine("Data truncated while writing CSV file: " + e.FileName); break; } }