Hello I have devexpress MainController(RibbonForm) created from template.
And have 2 Buttons Employees and Customers
I want to open Employees View into frame when Employees button clicked
I want to open CustomersView into frame when Customersbutton clicked
My codes under below
**MainController.cs**
using DevExpress.XtraBars;
using DevExpress.XtraBars.Docking2010.Views;
using DevExpress.XtraBars.Navigation;
using DevExpress.XtraEditors;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace aza.Forms
{
public partial class MainController : DevExpress.XtraBars.Ribbon.RibbonForm
{
XtraUserControl employeesUserControl;
XtraUserControl customersUserControl;
public MainController()
{
InitializeComponent();
employeesUserControl = CreateUserControl("Employees");
customersUserControl = CreateUserControl("Customers");
accordionControl.SelectedElement = employeesAccordionControlElement;
}
XtraUserControl CreateUserControl(string text)
{
XtraUserControl result = new XtraUserControl();
result.Name = text.ToLower() + "UserControl";
result.Text = text;
LabelControl label = new LabelControl();
label.Parent = result;
label.Appearance.Font = new Font("Tahoma", 25.25F);
label.Appearance.ForeColor = Color.Gray;
label.Dock = System.Windows.Forms.DockStyle.Fill;
label.AutoSizeMode = LabelAutoSizeMode.None;
label.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center;
label.Appearance.TextOptions.VAlignment = DevExpress.Utils.VertAlignment.Center;
label.Text = text;
return result;
}
void accordionControl_SelectedElementChanged(object sender, SelectedElementChangedEventArgs e)
{
if (e.Element == null) return;
XtraUserControl userControl = e.Element.Text == "Employees" ? employeesUserControl : customersUserControl;
tabbedView.AddDocument(userControl);
tabbedView.ActivateDocument(userControl);
}
void barButtonNavigation_ItemClick(object sender, ItemClickEventArgs e)
{
int barItemIndex = barSubItemNavigation.ItemLinks.IndexOf(e.Link);
accordionControl.SelectedElement = mainAccordionGroup.Elements[barItemIndex];
}
void tabbedView_DocumentClosed(object sender, DocumentEventArgs e)
{
RecreateUserControls(e);
SetAccordionSelectedElement(e);
}
void SetAccordionSelectedElement(DocumentEventArgs e)
{
if (tabbedView.Documents.Count != 0)
{
if (e.Document.Caption == "Employees") accordionControl.SelectedElement = customersAccordionControlElement;
else accordionControl.SelectedElement = employeesAccordionControlElement;
}
else
{
accordionControl.SelectedElement = null;
}
}
void RecreateUserControls(DocumentEventArgs e)
{
if (e.Document.Caption == "Employees") employeesUserControl = CreateUserControl("Employees");
else customersUserControl = CreateUserControl("Customers");
}
private void employesButton_ItemClick(object sender, ItemClickEventArgs e)
{
}
private void customersButton_ItemClick(object sender, ItemClickEventArgs e)
{
}
}
}
**EmployeesView.cs**
`using DevExpress.XtraEditors;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace aza.Forms
{
public partial class EmployeesView: DevExpress.XtraEditors.XtraForm
{
public EmployeesView()
{
InitializeComponent();
}
}
}
`
**CustomersView.cs**
using DevExpress.XtraEditors;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace aza.Forms
{
public partial class CustomersView: DevExpress.XtraEditors.XtraForm
{
public CustomersView()
{
InitializeComponent();
}
}
}
Thanks for help.I can’t find where I made a mistake
I couldn’t run the clicked function
Noucoder is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.