Occurs when the size of XLS / CSV file in reading / writing is above GemBox.Spreadsheet Free limit. (Free version only)
The event handler receives an argument of type LimitEventArgs containing data related to this event. The following LimitEventArgs properties provide information specific to this event.
| Property | Description |
|---|---|
| FileName | Gets the file name passed to the XLS / CSV file reading / writing method. |
| MaxRowCount | Gets the maximum number of rows used. |
| Operation | Indicates which operation caused this event to fire. |
| WorksheetCount | Gets the number of worksheets used. |
| WriteWarningWorksheet | Gets or sets whether the warning worksheet should be created when writing XLS file. |
This event is present only in Free version.
This event is fired when maximum row count per worksheet is reached (150 rows) or when more than 5 worksheets are used.
You can use this event to notify a user of your application that data is only partially read / written.
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.
[Visual Basic]
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
[C#]
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;
}
}
ExcelFile Class | GemBox.Spreadsheet Namespace | LimitNear