private void UseRangeAsDataSource() { #region #RangeAsDataSource RangeDataSourceOptions options = new RangeDataSourceOptions(); Worksheet sheet = spreadsheetControl1.ActiveWorksheet; CellRange dataRange = sheet.Selection; if (dataRange.Equals(sheet.Tables[0].Range)) { options.UseFirstRowAsHeader = true; } else { options.UseFirstRowAsHeader = false; options.DataSourceColumnTypeDetector = new MyColumnDetector(); } options.SkipHiddenColumns = true; rangeDS = dataRange.GetDataSource(options); sheet.DataBindings.Error += DataBindings_Error; #endregion #RangeAsDataSource BindControlsToDataSource(); }