windowsforms-devexpress-dot-xtraeditors-dot-repository-eb13d956.md
An object that contains settings specific to a ButtonEdit control. Repository items allow you to embed editors into container controls (for instance, GridControl, TreeList, RibbonControl).
Namespace : DevExpress.XtraEditors.Repository
Assembly : DevExpress.XtraEditors.v25.2.dll
NuGet Package : DevExpress.Win.Navigation
[DXLicenseWinFormsEditors]
public class RepositoryItemButtonEdit :
RepositoryItemTextEdit
<DXLicenseWinFormsEditors>
Public Class RepositoryItemButtonEdit
Inherits RepositoryItemTextEdit
The following members return RepositoryItemButtonEdit objects:
A RepositoryItemButtonEdit object contains properties, methods, and events related to a ButtonEdit control.
If you use a standalone ButtonEdit control, its ButtonEdit.Properties property returns a RepositoryItemButtonEdit instance. You can access this object to customize the editor’s settings.
The following example adds a button to a standalone ButtonEdit control, and handles the ButtonClick event to respond to button clicks.
using DevExpress.XtraEditors.Repository;
RepositoryItemButtonEdit properties = buttonEdit1.Properties;
properties.Buttons.Clear();
properties.Buttons.Add(new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Close));
properties.ButtonClick += Properties_ButtonClick;
private void Properties_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e) {
if(e.Button.Kind==DevExpress.XtraEditors.Controls.ButtonPredefines.Close) {
//...
}
}
Imports DevExpress.XtraEditors.Repository
Dim properties As RepositoryItemButtonEdit = ButtonEdit1.Properties
properties.Buttons.Clear()
properties.Buttons.Add(New DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Close))
AddHandler properties.ButtonClick, AddressOf Properties_ButtonClick
Private Sub Properties_ButtonClick(sender As Object, e As ButtonPressedEventArgs)
If e.Button.Kind = ButtonPredefines.Close Then
'...
End If
End Sub
For each editor that can be embedded in a composite control (for instance, GridControl, TreeList, RibbonControl) the DevExpress Editors library has a corresponding repository item (a RepositoryItem descendant).
Create a RepositoryItemButtonEdit object to embed a ButtonEdit control into such a composite control. See the following topic for more information: Editors and Simple Controls.
The following example embeds an in-place ButtonEdit editor (a RepositoryItemButtonEdit object) into a Data Grid’s “Description” column.
The example creates two buttons (Undo and Copy) for the editor and handles the RepositoryItemButtonEdit.ButtonClick event to perform actions when a user clicks any of these buttons.
RepositoryItemButtonEdit inplaceButtonEdit = new RepositoryItemButtonEdit();
inplaceButtonEdit.Buttons.Clear();
//Undo Button
EditorButton undoButton = new EditorButton(ButtonPredefines.Undo);
undoButton.Enabled = false;
//Copy Button
EditorButton copyButton = new EditorButton(ButtonPredefines.Glyph);
copyButton.Caption = "Copy";
copyButton.ImageOptions.SvgImage = global::WindowsFormsApplication2.Properties.Resources.copy;
copyButton.ImageOptions.SvgImageSize = new Size(16, 16);
inplaceButtonEdit.Buttons.Add(undoButton);
inplaceButtonEdit.Buttons.Add(copyButton);
inplaceButtonEdit.ButtonClick += InplaceButtonEdit_ButtonClick;
inplaceButtonEdit.EditValueChanged += InplaceButtonEdit_EditValueChanged;
gridView1.Columns["Description"].ColumnEdit = inplaceButtonEdit;
gridView1.GridControl.RepositoryItems.Add(inplaceButtonEdit);
private void InplaceButtonEdit_ButtonClick(object sender, ButtonPressedEventArgs e) {
ButtonEdit editor = sender as ButtonEdit;
if (e.Button.Kind == ButtonPredefines.Undo) {
editor.Undo();
}
if (e.Button.Kind == ButtonPredefines.Glyph && e.Button.Caption == "Copy") {
editor.SelectAll();
editor.Copy();
}
}
private void InplaceButtonEdit_EditValueChanged(object sender, EventArgs e) {
ButtonEdit editor = sender as ButtonEdit;
if (editor.Properties.Buttons.Count == 0) return;
EditorButton undoButton = editor.Properties.Buttons[0];
if ( undoButton.Kind == ButtonPredefines.Undo) {
undoButton.Enabled = editor.CanUndo;
}
}
Dim inplaceButtonEdit As RepositoryItemButtonEdit = New RepositoryItemButtonEdit()
inplaceButtonEdit.Buttons.Clear()
'Undo Button
Dim undoButton As EditorButton = New EditorButton(ButtonPredefines.Undo)
undoButton.Enabled = False
'Copy Button
Dim copyButton As EditorButton = New EditorButton(ButtonPredefines.Glyph)
copyButton.Caption = "Copy"
copyButton.ImageOptions.SvgImage = Global.WindowsFormsApplication7.My.Resources.copy
copyButton.ImageOptions.SvgImageSize = New Size(16, 16)
inplaceButtonEdit.Buttons.Add(undoButton)
inplaceButtonEdit.Buttons.Add(copyButton)
AddHandler inplaceButtonEdit.ButtonClick, AddressOf InplaceButtonEdit_ButtonClick
AddHandler inplaceButtonEdit.EditValueChanged, AddressOf InplaceButtonEdit_EditValueChanged
GridView1.Columns("Description").ColumnEdit = inplaceButtonEdit
GridView1.GridControl.RepositoryItems.Add(inplaceButtonEdit)
Private Sub InplaceButtonEdit_ButtonClick(ByVal sender As Object, ByVal e As ButtonPressedEventArgs)
Dim editor As ButtonEdit = TryCast(sender, ButtonEdit)
If e.Button.Kind = ButtonPredefines.Undo Then
editor.Undo()
End If
If e.Button.Kind = ButtonPredefines.Glyph AndAlso e.Button.Caption = "Copy" Then
editor.SelectAll()
editor.Copy()
End If
End Sub
Private Sub InplaceButtonEdit_EditValueChanged(ByVal sender As Object, ByVal e As EventArgs)
Dim editor As ButtonEdit = TryCast(sender, ButtonEdit)
If editor.Properties.Buttons.Count = 0 Then
Return
End If
Dim undoButton As EditorButton = editor.Properties.Buttons(0)
If undoButton.Kind = ButtonPredefines.Undo Then
undoButton.Enabled = editor.CanUndo
End If
End Sub
Show 39 items
Object MarshalByRefObject Component DevExpress.XtraEditors.ComponentBase RepositoryItem RepositoryItemTextEdit RepositoryItemButtonEdit RepositoryItemHyperLinkEdit
RepositoryItemPopupBaseAutoSearchEdit
RepositoryItemPopupContainerEdit
RepositoryItemPopupGalleryEdit
RepositoryItemDateTimeOffsetEdit
RepositoryItemGridLookUpEditBase
RepositoryItemCheckedComboBoxEdit
RepositoryItemSearchLookUpEdit
RepositoryItemTreeListLookUpEdit
See Also