public void PdfTemplateInfo(object currentCell, object row) { Syncfusion.Pdf.Grid.PdfGridCell range = (Syncfusion.Pdf.Grid.PdfGridCell)currentCell; object templatevalue; foreach (var ds in row.GetType().GetProperties()) { if (range.Value.ToString().Contains(ds.Name)) { templatevalue = row.GetType().GetProperty(ds.Name).GetValue(row, null); var regex = new Regex("<a [^>]*href=(?:'(?<href>.*?)')|(?:\"(?<href>.*?)\")", RegexOptions.IgnoreCase); var urls = regex.Matches(range.Value.ToString()).OfType <Match>().Select(m => m.Groups["href"].Value).SingleOrDefault(); RectangleF rectangle = new RectangleF(10, 40, 30, 30); PdfUriAnnotation uriAnnotation = new PdfUriAnnotation(rectangle, urls); uriAnnotation.Text = templatevalue.ToString(); range.Value = uriAnnotation; } } }
protected void EmployeesGrid_ServerPdfColumnTemplateInfo(object arg1, object arg2) { Syncfusion.Pdf.Grid.PdfGridCell range = (Syncfusion.Pdf.Grid.PdfGridCell)arg1; object templatevalue; range.Value = Uri.UnescapeDataString(range.Value.ToString()); foreach (var ds in arg2.GetType().GetProperties()) { if (range.Value.ToString().Contains(ds.Name)) { templatevalue = arg2.GetType().GetProperty(ds.Name).GetValue(arg2, null); var regex = new Regex("<a [^>]*href=(?:'(?<href>.*?)')|(?:\"(?<href>.*?)\")", RegexOptions.IgnoreCase); var urls = regex.Matches(range.Value.ToString()).OfType <Match>().Select(m => m.Groups["href"].Value).SingleOrDefault(); RectangleF rectangle = new RectangleF(10, 40, 30, 30); PdfUriAnnotation uriAnnotation = new PdfUriAnnotation(rectangle, urls); uriAnnotation.Text = templatevalue.ToString(); range.Value = uriAnnotation; } } }