Source/NavigationBarDesigner.cs

(开头部分) 6KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Windows.Forms;
using System.Windows.Forms.Design;
using System.Collections;
using System.Drawing;
using System.ComponentModel.Design;
using System.ComponentModel;
using System.ComponentModel.Design.Serialization;
using System.CodeDom;

namespace DevComponents.DotNetBar
{
	/// <summary>
	/// Provides design time support for NavigationBar control.
	/// </summary>
	public class NavigationBarDesigner:BarBaseControlDesigner
	{
		/// <summary>
		/// Default constructor
		/// </summary>
		public NavigationBarDesigner()
		{
			this.EnableItemDragDrop=false;
		}

		public override DesignerVerbCollection Verbs 
		{
			get 
			{
				DesignerVerb[] verbs;
				verbs = new DesignerVerb[]
				{
					new DesignerVerb("Create New Button", new EventHandler(CreateNewButton)),
				};
				return new DesignerVerbCollection(verbs);
			}
		}
		private void CreateNewButton(object sender, EventArgs e)
		{
			IDesignerHost dh=(IDesignerHost)GetService(typeof(IDesignerHost));
			NavigationBar navbar=this.Control as NavigationBar;
			if(navbar==null || dh==null)
				return;

			IComponentChangeService change=this.GetService(typeof(IComponentChangeService)) as IComponentChangeService;
			if(change!=null)
				change.OnComponentChanging(this.Component,null);

			ButtonItem item=dh.CreateComponent(typeof(ButtonItem)) as ButtonItem;
			item.Text=item.Name;
			item.OptionGroup="navBar";
			item.Image=BarFunctions.LoadBitmap("SystemImages.DefaultNavBarImage.png");
			navbar.Items.Add(item);
			if(navbar.Items.Count==1)
				item.Checked=true;
			navbar.RecalcLayout();

			if(change!=null)
				change.OnComponentChanged(this.Component,null,null,null);

后面还有 148 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。