DevExtreme Vue - Customize the Title
The Popover is displayed without a title by default. To add it, set the showTitle option to true and specify the title text using the title option. The title can contain a button that closes the Popover. To enable it, assign true to the showCloseButton option.
jQuery
$(function() {
$("#popoverContainer").dxPopover({
target: "#image",
showEvent: 'dxhoverstart',
hideEvent: 'dxhoverend',
title: "Popover Title",
showTitle: true,
showCloseButton: true
});
});
<img id="image" src="https://www.devexpress.com/DXR.axd?r=9999_17-FD0Id" />
<div id="popoverContainer">
<!-- ... -->
</div>Angular
<img id="image" src="https://www.devexpress.com/DXR.axd?r=9999_17-FD0Id" />
<dx-popover
target="#image"
showEvent="dxhoverstart"
hideEvent="dxhoverend"
title="Popover Title"
[showTitle]="true"
[showCloseButton]="true">
<!-- ... -->
</dx-popover>
import { DxPopoverModule } from "devextreme-angular";
// ...
export class AppComponent {
// ...
}
@NgModule({
imports: [
// ...
DxPopoverModule
],
// ...
})ASP.NET MVC Controls
@(Html.DevExtreme().Popover()
.Target("#image")
.ShowEvent("dxhoverstart")
.HideEvent("dxhoverend")
.ContentTemplate(@<text>
<!-- ... -->
</text>)
.Title("Popover Title")
.ShowTitle(true)
.ShowCloseButton(true)
)
<img id="image" src="https://www.devexpress.com/DXR.axd?r=9999_17-FD0Id" />If you need to define the title completely, specify a template for it as shown in the following code:
jQuery
<img id="image" src="https://www.devexpress.com/DXR.axd?r=9999_17-FD0Id" />
<div id="popoverContainer">
<p>Popover content</p>
<div data-options="dxTemplate: { name: 'titleTemplate' }">
<p>Title template</p>
</div>
</div>$(function() {
$("#popoverContainer").dxPopover({
target: "#image",
showEvent: "dxhoverstart",
hideEvent: "dxhoverend",
showTitle: true,
titleTemplate: "titleTemplate"
});
});Angular
<img id="image" src="https://www.devexpress.com/DXR.axd?r=9999_17-FD0Id" />
<dx-popover
target="#image"
showEvent="dxhoverstart"
hideEvent="dxhoverend"
[showTitle]="true"
titleTemplate="titleTemplate">
<div *dxTemplate="let data of 'content'">
<p>Popover content</p>
</div>
<div *dxTemplate="let data of 'titleTemplate'">
<p>Title template</p>
</div>
</dx-popover>
import { DxPopoverModule } from "devextreme-angular";
// ...
export class AppComponent {
// ...
}
@NgModule({
imports: [
// ...
DxPopoverModule
],
// ...
})ASP.NET MVC Controls
@(Html.DevExtreme().Popover()
.Target("#image")
.ShowEvent("dxhoverstart")
.HideEvent("dxhoverend")
.ContentTemplate(@<text>
<!-- ... -->
</text>)
.ShowTitle(true)
.TitleTemplate(@<text>
<p>Title template</p>
</text>)
)
<img id="image" src="https://www.devexpress.com/DXR.axd?r=9999_17-FD0Id" />You can switch title templates on the fly just as you can do with content templates. Refer to the Switching Templates On the Fly topic for more information.