There are two options:
1. You can define the bubble HTML in BeforeEventRender event handler. This will store the bubble HTML with the event (it will be static). No server-side call will be required when opening the bubble. In BeforeEventRender you can access e.DataItem. e.DataItem holds all fields from the original object, accessible using the indexer - e.g. e.DataItem["Location"]. The original object is stored in e.DataItem.Source.
See also:
http://doc.daypilot.org/scheduler/event-customization/
2. You can load the bubble HTML dynamically using DayPilotBubble.RenderEventBubble. This event handler will be called if the static HTML is not defined. You can't access e.DataItem here but you can access custom fields specified using DayPilotScheduler.DataTagFields.
Example:
Scheduler
DayPilotScheduler1.DataTagFields="Location"; // must be
Bubble
protected void DayPilotBubble1_RenderEventBubble(object sender, RenderEventBubbleEventArgs e)
{
e.InnerHTML = e.Tag["Location"];
}
For more about event bubbles see:
http://doc.daypilot.org/scheduler/event-bubble/