Back to Devexpress

BarItem.Content Property

wpf-devexpress-dot-xpf-dot-bars-dot-baritem.md

latest13.8 KB
Original Source

BarItem.Content Property

Gets or sets the bar item’s content. This is a dependency property.

Namespace : DevExpress.Xpf.Bars

Assembly : DevExpress.Xpf.Core.v25.2.dll

NuGet Package : DevExpress.Wpf.Core

Declaration

csharp
public object Content { get; set; }
vb
Public Property Content As Object

Property Value

TypeDescription
Object

The data that is the bar item’s content.

|

Remarks

For BarEditItem objects, the object specified by the Content property is displayed before the item’s edit box. The object specified by the BarEditItem.Content2 property is displayed after the edit box.

Note

BarItem objects can be displayed in multiple places simultaneously (for instance, in a Ribbon Page Group and Ribbon Quick Access Toolbar), while it is not possible to display the same UIElement in multiple places simultaneously. Therefore it is not possible to use UIElement objects as BarItems’ contents.

Example

This example shows how to create bar items and associate them with a custom Format category.

The following image shows the result:

vb
Imports System
Imports System.Collections.Generic
Imports System.Configuration
Imports System.Data
Imports System.Linq
Imports System.Windows

Namespace WpfApplication3
    ''' <summary>
    ''' Interaction logic for App.xaml
    ''' </summary>
    Partial Public Class App
        Inherits Application

        Private Sub OnAppStartup_UpdateThemeName(ByVal sender As Object, ByVal e As StartupEventArgs)

            DevExpress.Xpf.Core.ApplicationThemeHelper.UpdateApplicationThemeName()
        End Sub
    End Class
End Namespace
xaml
<Window x:Class="WpfApplication3.Window1" 
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:dx="http://schemas.devexpress.com/winfx/2008/xaml/core" 
        xmlns:dxb="http://schemas.devexpress.com/winfx/2008/xaml/bars"
        Title="Window1" Height="300" Width="300" >
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="*"/>
        </Grid.RowDefinitions>

        <dxb:BarContainerControl Grid.Row="0">
            <dxb:ToolBarControl Caption="Main Toolbar">
                <dxb:BarCheckItem Content="Bold" Glyph="{dx:DXImage Image=Bold_16x16.png}" CategoryName="Format" 
                                  CheckedChanged="checkBtnBold_CheckChanged"/>
                <dxb:BarCheckItem Content="Italic" Glyph="{dx:DXImage Image=Italic_16x16.png}" CategoryName="Format" 
                                  CheckedChanged="checkBtnItalic_CheckChanged"/>
            </dxb:ToolBarControl>
        </dxb:BarContainerControl>
    </Grid>
</Window>
xaml
<Application x:Class="WpfApplication3.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="Window1.xaml" Startup="OnAppStartup_UpdateThemeName">
    <Application.Resources>

    </Application.Resources>
</Application>
vb
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Data
Imports System.Windows.Documents
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Navigation
Imports System.Windows.Shapes
Imports DevExpress.Xpf.Bars

Namespace WpfApplication3
    ''' <summary>
    ''' Interaction logic for Window1.xaml
    ''' </summary>
    Partial Public Class Window1
        Inherits Window

        Public Sub New()
            InitializeComponent()
        End Sub

        Private Sub checkBtnItalic_CheckChanged(ByVal sender As Object, ByVal e As ItemClickEventArgs)
            '...
        End Sub

        Private Sub checkBtnBold_CheckChanged(ByVal sender As Object, ByVal e As DevExpress.Xpf.Bars.ItemClickEventArgs)
            '...
        End Sub
    End Class
End Namespace
csharp
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using DevExpress.Xpf.Bars;

namespace WpfApplication3 {
    /// <summary>
    /// Interaction logic for Window1.xaml
    /// </summary>
    public partial class Window1 : Window {
        public Window1() {
            InitializeComponent();
        }

        void checkBtnItalic_CheckChanged(object sender, ItemClickEventArgs e) {
            //...
        }

        void checkBtnBold_CheckChanged(object sender, DevExpress.Xpf.Bars.ItemClickEventArgs e) {
            //...
        }
    }
}

The following code snippets (auto-collected from DevExpress Examples) contain references to the Content property.

Note

The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.

wpf-data-grid-implement-crud-operations/CS/CodeBehind/EFCore/LocalData/MainWindow.xaml#L14

xml
<dxb:ToolBarControl>
    <dxb:BarButtonItem Content="Refresh (F5)" Command="{Binding View.Commands.RefreshDataSource, ElementName=grid}"
                       Glyph="{dx:DXImage SvgImages/Icon Builder/Actions_Refresh.svg}" BarItemDisplayMode="ContentAndGlyph" />

wpf-docklayoutmanager-merge-ribbon-controls/CS/WpfApplication1/MainWindow.xaml#L12

xml
<dxr:RibbonPageGroup Caption="File">
    <dxb:BarButtonItem x:Name="biNew" Content="New" LargeGlyph="{dx:DXImage Image=New_32x32.png}"/>
    <dxb:BarButtonItem x:Name="biOpen" Content="Open" Glyph="{dx:DXImage Image=Open_16x16.png}"/>

wpf-dashboard-how-to-add-custom-caption-menu/CS/WpfDashboardCustomCaptionMenu/MainWindow.xaml#L22

xml
<ItemsControl>
    <dxb:BarSubItem AllowGlyphTheming="True" Content="My Title Item" dxb:CollectionAction.ContainerName="{x:Static dxdasht:DefaultBarItemNames.DashboardTitle_ExportToPopupMenu}">
        <dxb:BarButtonItem Content="Item1" />

wpf-create-a-ribboncontrol/CS/RibbonControl_Ex/MainWindow.xaml#L86

xml
<dxr:RibbonControl.PageHeaderItems>
    <dxb:BarEditItem x:Name="eRibbonStyle" Content="Ribbon Style:"
        EditWidth="100"

wpf-data-grid-extend-crud-operations/CS/AsyncCRUDOperations/MainWindow.xaml#L15

xml
<dxb:ToolBarControl>
    <dxb:BarButtonItem Content="Refresh (F5)" Command="{Binding View.Commands.RefreshDataSource, ElementName=grid}" Glyph="{dx:DXImage SvgImages/Icon Builder/Actions_Refresh.svg}" BarItemDisplayMode="ContentAndGlyph" />
    <dxb:BarButtonItem Content="Edit (F2)" Command="{Binding View.Commands.EditFocusedRow, ElementName=grid}" Glyph="{dx:DXImage SvgImages/Icon Builder/Actions_Edit.svg}" BarItemDisplayMode="ContentAndGlyph" />

wpf-scheduler-handle-popupmenushowing-event-to-customize-context-menus/CS/PopUpMenuShowingEvent/MainWindow.xaml.cs#L22

csharp
if (menuItem != null && menuItem.Name == DefaultBarItemNames.ContextMenu_Items_Cell_Actions_NewAllDayEvent) {
    menuItem.Content = "Create All-Day Appointment";
    break;

wpf-pivot-grid-change-summary-display-type/CS/HeaderMenuCustomizationExample/HeaderMenuHelper.cs#L72

csharp
barSubItem.Name = "bsi" + propertyName;
barSubItem.Content = displayText;

wpf-pdf-viewer-customize-the-popup-menu/CS/MainWindow.xaml.cs#L29

csharp
BarButtonItem barButtonItem = new BarButtonItem();
barButtonItem.Content = "Save As...";
barButtonItem.Command = viewer.SaveAsCommand;

wpf-bars-visually-separate-bar-items/CS/BarItemLinkSeparatorEx/Window1.xaml.cs#L26

csharp
private void itemClick(object sender, DevExpress.Xpf.Bars.ItemClickEventArgs e) {
    MessageBox.Show("Item " + e.Item.Content + " has been clicked.");
}

wpf-dock-layout-manager-use-events-to-dynamically-customize-context-menus/CS/DockManager_MenuCustomization/Window1.xaml.cs#L34

csharp
InsertBarItemLinkAction.SetItemLinkIndex(actionAddAboutItem, 0);
actionAddAboutItem.Content = "About...";
actionAddAboutItem.ItemClick += new ItemClickEventHandler(btnAbout_ItemClick);

wpf-scheduler-handle-popupmenushowing-event-to-customize-context-menus/VB/PopUpMenuShowingEvent/MainWindow.xaml.vb#L25

vb
If menuItem IsNot Nothing AndAlso Equals(menuItem.Name, DefaultBarItemNames.ContextMenu_Items_Cell_Actions_NewAllDayEvent) Then
    menuItem.Content = "Create All-Day Appointment"
    Exit For

wpf-pivot-grid-change-summary-display-type/VB/HeaderMenuCustomizationExample/HeaderMenuHelper.vb#L69

vb
barSubItem.Name = "bsi" & propertyName
barSubItem.Content = displayText

wpf-pdf-viewer-customize-the-popup-menu/VB/MainWindow.xaml.vb#L31

vb
Dim barButtonItem As New BarButtonItem()
barButtonItem.Content = "Save As..."
barButtonItem.Command = viewer.SaveAsCommand

wpf-bars-visually-separate-bar-items/VB/BarItemLinkSeparatorEx/Window1.xaml.vb#L18

vb
Private Sub itemClick(ByVal sender As Object, ByVal e As DevExpress.Xpf.Bars.ItemClickEventArgs)
    MessageBox.Show("Item " & e.Item.Content & " has been clicked.")
End Sub

wpf-dock-layout-manager-use-events-to-dynamically-customize-context-menus/VB/DockManager_MenuCustomization/Window1.xaml.vb#L26

vb
BarItemLinkActionBase.SetItemLinkIndex(actionAddAboutItem, 0)
actionAddAboutItem.Content = "About..."
AddHandler actionAddAboutItem.ItemClick, New ItemClickEventHandler(AddressOf btnAbout_ItemClick)

See Also

ContentTemplate

ContentTemplateSelector

Content2

BarItem Class

BarItem Members

DevExpress.Xpf.Bars Namespace