/// <summary> /// Handle event when click on Tool bar button (Open new window). /// </summary> /// <param name="sender"></param> /// <param name="e"></param> /// <remarks> /// Author: Le Tien Phat. /// Created date: 14/05/2011 /// </remarks> private void ToolBarButtonOnClick(object sender, ToolBarButtonClickEventArgs e) { MDToolBarButton tbb = e.Button as MDToolBarButton; if (tbb == null) { return; } string formName = tbb.FormName; Form frm = null; try { if (formName != AssemblyName) { frm = (Form)Activator.CreateInstance(Type.GetType(formName), null); } } catch (Exception ex) { log.Error(ex.Message, ex); MessageBox.Show(clsResources.GetMessage("errors.form.create", formName)); } if (frm != null) { clsFormManager.ShowMDIChild(frm); } }
/// <summary> /// Create tool bar /// </summary> /// <param name="dt"></param> /// <remarks> /// Author: Le Tien Phat. /// Created date: 14/05/2011 /// </remarks> public void CreateToolBar(DataTable dt) { clsCommon.RemoveAllToolBar(this); ArrayList ctrls = new ArrayList(); string otbName = null; string tbName = ""; string description = null; string iconName = null; string filename; string folder = clsSystemConfig.IconFolder; Size size = new Size(180, 10); ToolBar tb = null; MDToolBarButton tbb = null; ImageList imgs = null; DataRow[] rows = dt.Select("TOOLBAR_BUTTON_INDEX >= 0", "TOOLBAR_NAME, TOOLBAR_BUTTON_INDEX"); int index = 0; foreach (DataRow row in rows) { tbb = new MDToolBarButton(); tbName = row[TOOLBAR_NAME].ToString(); iconName = row[ICON_NAME].ToString(); if (tbName != otbName) { tb = new ToolBar(); tb.TextAlign = ToolBarTextAlign.Right; tb.Dock = DockStyle.Left; tb.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); tb.AutoSize = false; //tb.Height = size.Height; tb.Width = size.Width; tb.ButtonSize = size; tb.Appearance = ToolBarAppearance.Flat; tb.BorderStyle = System.Windows.Forms.BorderStyle.None; imgs = new ImageList(); imgs.ColorDepth = ColorDepth.Depth32Bit; //imgs.ImageSize = new Size(14,14); index = 0; // Create panel in order to toolbar can inherit backcolor Panel pnl = new Panel(); pnl.BackColor = System.Drawing.Color.FromArgb(((System.Byte)(142)), ((System.Byte)(179)), ((System.Byte)(231))); pnl.ForeColor = Color.Green; pnl.BorderStyle = System.Windows.Forms.BorderStyle.None; pnl.Size = new Size(180, 1000); pnl.Controls.Add(tb); // This toolbar holds panel ToolBar tbx = new ToolBar(); tbx.Dock = DockStyle.Left; tbx.BorderStyle = System.Windows.Forms.BorderStyle.None; tbx.Controls.Add(pnl); tbx.AutoSize = false; tbx.Size = pnl.Size; ctrls.Add(tbx); otbName = tbName; tb.ImageList = imgs; tb.ButtonClick += new ToolBarButtonClickEventHandler(ToolBarButtonOnClick); } tbb.Name = row[MENU_NAME].ToString(); tbb.FormName = AssemblyName + row[FORM_NAME].ToString(); description = clsResources.GetTitle(frmMainName + tbb.Name); tbb.Text = description; if (iconName.Length > 0) { filename = folder + iconName; if (File.Exists(filename)) { try { Icon icon = new Icon(filename); imgs.Images.Add(icon); tbb.ImageIndex = index; index++; } catch (Exception ex) { log.Error(ex.Message, ex); } } } tb.Buttons.Add(tbb); } foreach (Control ctrl in ctrls) { this.Controls.Add(ctrl); } }