XRControl.HtmlItemCreated Event
Occurs when a new item used for a Web representation of the control is created.
Namespace: DevExpress.XtraReports.UI
Assembly: DevExpress.XtraReports.v24.2.dll
NuGet Package: DevExpress.Reporting.Core
Declaration
Event Data
The HtmlItemCreated event's data class is HtmlEventArgs. The following properties provide information specific to this event:
Property | Description |
---|---|
Brick | Gets a visual brick that represents the content of the currently processed item on a report page. |
ContentCell | Gets the content of the currently processed item. |
ScriptContainer | Gets an object that implements the IScriptContainer interface and is used for registering the scripts and styles in the current HTML document. |
Remarks
This event is used for creating a customized view of controls on a Web page.
Example
The following example demonstrates how to use the XRControl.HtmlItemCreated
event to customize the content of an XRLabel control, when a report is exported to HTML. In the event handler, create two custom HTML elements, which will display a check box and a hyperlink on a Web page, and add them to the control’s content using the HtmlEventArgs.ContentCell property of the event parameter.
Follow the steps below to create a sample project.
- Start Visual Studio and create a new Windows Forms Application or open an existing one.
- Add a new report (named XtraReport1) to the application.
Drop an XRLabel control onto a report and handle its HtmlItemCreated event as follows.
using DevExpress.XtraPrinting.HtmlExport; using DevExpress.XtraPrinting.HtmlExport.Controls; using DevExpress.XtraReports.UI; // ... private void xrLabel1_HtmlItemCreated(object sender, HtmlEventArgs e) { // Clear content of the currently processed item. e.ContentCell.Controls.Clear(); // Create a check box. DXHtmlGenericControl checkBox = new DXHtmlGenericControl(DXHtmlTextWriterTag.Input); checkBox1.Attributes["checked"] = "true"; checkBox1.Attributes["type"] = "CheckBox"; // Create a hyperlink. DXHtmlAnchor hypLink = new DXHtmlAnchor(); hypLink.InnerText = "XtraReports Web Page"; hypLink.HRef = "https://www.devexpress.com/Subscriptions/Reporting/"; // Add the created elements to the item's content. e.ContentCell.Controls.Add(checkBox); e.ContentCell.Controls.Add(hypLink); }
Then, to export a report to HTML, you can use code similar to the following.
using System;
using System.Windows.Forms;
using System.Diagnostics;
// ...
private void ExportToHTML() {
XtraReport1 report = new XtraReport1();
report.ExportToHtml("Test.html");
StartProcess("Test.html");
}
public void StartProcess(string path) {
Process process = new Process();
try {
process.StartInfo.FileName = path;
process.Start();
process.WaitForInputIdle();
}
catch { }
}