DevExpress的报表设计器中原有的工具箱是支持删除,新增工具,但是工具箱却操作不方便,或者说在特定环境下,自己想要更改整个工具箱的布局,样式,以及操作方式的时候可以用以下方法实现:
1.拖拽一个ToolBoxControl
2.定义几个全局变量(多个事件中会用到)
private System.Drawing.Design.ToolboxItem itemToolLink = null;
private XRToolboxService xRToolboxService = null;
private Dictionary<DevExpress.XtraToolbox.ToolboxItem, System.Drawing.Design.ToolboxItem> toolboxItemsLink = new Dictionary<DevExpress.XtraToolbox.ToolboxItem, System.Drawing.Design.ToolboxItem>();
3.实现ToolBoxControl的MouseDown和MouseMove事件
private void toolboxControlReport_MouseDown(object sender, MouseEventArgs e)
{
DevExpress.XtraToolbox.ToolboxHitInfo hitInfo = toolboxControlReport.CalcHitInfo(e.Location);
if (hitInfo == null || !hitInfo.IsInItem || !toolboxItemsLink.TryGetValue(hitInfo.ItemInfo.Item, out ite