⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 htmltextbox.cs

📁 ASP开发网站的 关于网站的设计和说明 还有SQL的程序 数据库
💻 CS
📖 第 1 页 / 共 5 页
字号:
		private string GetResourceStringFromResourceManager(string key) 
		{
			if (this._resourceManager == null) 
				lock (this)

					if (this._resourceManager == null)
						this._resourceManager = new ResourceManager("ASPNET.StarterKit.Communities.HtmlTextBox", typeof(HtmlTextBox).Module.Assembly);

			return this._resourceManager.GetString(key, null);
		}
		// end by manudea - 15/3/2003

		protected virtual void RegisterClientScript() 
		{			
			string versionInfo = System.Reflection.Assembly.GetAssembly(this.GetType()).FullName;
			int start = versionInfo.IndexOf("Version=")+8;
			int end = versionInfo.IndexOf(",",start);
			versionInfo = versionInfo.Substring(start,end-start);
			string info = @"
<!--
 ********************************************
 * HtmlTextBox " + versionInfo + @"
 * by John Dyer
 * http://www.revjon.com/ftb/
 ********************************************
-->";

			Page.RegisterClientScriptBlock(base.ID + "_Info",info);
						
			if (IsMshtmlEditorCapable) 
			{
				// Register common scripts from resource
				if (!Page.IsClientScriptBlockRegistered("HtmlTextBoxMshtmlBaseScript") ) 
				{
					// by manudea - 15/3/2003
					Page.RegisterClientScriptBlock("HtmlTextBoxMshtmlBaseScript",GetResourceStringFromResourceManager("HtmlTextBoxMshtmlBaseScript"));
				}	
				// Register common styles from resource
				if (!Page.IsClientScriptBlockRegistered("HtmlTextBoxMshtmlStyles") ) 
				{
					// by manudea - 15/3/2003
					Page.RegisterClientScriptBlock("HtmlTextBoxMshtmlStyles",GetResourceStringFromResourceManager("HtmlTextBoxMshtmlStyles"));
				}
				// Register this control's breakmode script
				Page.RegisterClientScriptBlock(base.ID + "_BreakMode", BreakModeScript());
				// Register this control's pasting features
				Page.RegisterClientScriptBlock(base.ID + "_OnPaste", OnPasteScript());
				// Register this control's button styles
				if (ButtonType != ButtonType.FormButton) Page.RegisterClientScriptBlock(base.ID + "EditorStyles", EditorStyles());

				string ButtonPreload = "";
				string ButtonPrefix = "";					
				ButtonPrefix = this.ButtonPath.Substring(0,ButtonPath.Length-1);
				ButtonPrefix = ButtonPrefix.Substring(ButtonPrefix.LastIndexOf("/")+1,ButtonPrefix.Length-ButtonPrefix.LastIndexOf("/")-1);


				//if (this.ButtonOverImage) {
				ButtonPreload += "img_" + ButtonPrefix + "_ButtonOverImage = new Image();\n";
				ButtonPreload += "img_" + ButtonPrefix + "_ButtonOverImage.src = \"" + ButtonPath + "toolbarbutton.over." + this.ButtonFileExtention + "\";\n";
				//}
				//if (this.ButtonDownImage) {
				ButtonPreload += "img_" + ButtonPrefix + "_ButtonDownImage = new Image();\n";
				ButtonPreload += "img_" + ButtonPrefix + "_ButtonDownImage.src = \"" + ButtonPath + "toolbarbutton.down." + this.ButtonFileExtention + "\";\n";
				//}
				for (int i=0; i<Toolbars.Count; i++) 
				{

					for (int j=0; j<Toolbars[i].Items.Count; j++) 
					{
						ToolbarItem myItem = Toolbars[i].Items[j];						
						if (myItem.GetType() == typeof (HtmlTextBoxControls.ToolbarButton)) 
						{
							ToolbarButton myButton = (ToolbarButton) myItem;

							if (!Page.IsClientScriptBlockRegistered(myButton.Function)) 
							{
								Page.RegisterClientScriptBlock(myButton.Function, myButton.ScriptBlock);
							}
							ButtonPreload +=  "img_" + ButtonPrefix + "_" + myButton.Name + " = new Image();\n";
							ButtonPreload += "img_" + ButtonPrefix + "_" + myButton.Name + ".src = \"" + ButtonPath + myButton.Name.ToLower() + "." + this.ButtonFileExtention + "\";\n";
							if (ButtonOverImage) 
							{
								ButtonPreload +=  "img_" + ButtonPrefix + "_" + myButton.Name + "_over = new Image();\n";
								ButtonPreload += "img_" + ButtonPrefix + "_" + myButton.Name + "_over.src = \"" + ButtonPath + myButton.Name.ToLower() + ".over." + this.ButtonFileExtention + "\";";
							}
						} 
						else if (myItem.GetType() == typeof(HtmlTextBoxControls.ToolbarDropDownList)) 
						{							
							ToolbarDropDownList myDropDown = (ToolbarDropDownList) myItem;							
							if (!Page.IsClientScriptBlockRegistered(myDropDown.Function)) 
							{
								Page.RegisterClientScriptBlock(myDropDown.Function, myDropDown.ScriptBlock);
							}						
						} 
						else 
						{
							// Separator
						}						
					} // each item
				} // each toolbar
				
				ButtonPreload = @"<script language=""JavaScript"">
" + ButtonPreload + @"
</script>";

				if (!this.Page.IsClientScriptBlockRegistered(ButtonPrefix + "_images")) 
				{
					this.Page.RegisterClientScriptBlock(ButtonPrefix + "_images", ButtonPreload);
				}

				// fix for IE 5 which doesn't not have iframe.onblur
				this.Page.RegisterOnSubmitStatement(base.ID + "_OnSubmit","FTB_CopyHtmlToHidden(" + base.ID + @"_editor,document.getElementById('" + base.ID + @"')," + base.ID + @"_HtmlMode);");

			} 
			else if (this.IsBasicEditorCapable && this.DownlevelMode == DownlevelMode.BasicEditor) 
			{
				this.StartMode = EditorMode.HtmlMode;
				if (!Page.IsClientScriptBlockRegistered("HtmlTextBoxBasicEditorBase") ) 
				{
					ResourceManager manager = new ResourceManager( this.GetType() );
					string script = manager.GetResourceSet(System.Globalization.CultureInfo.CurrentCulture, true, true).GetString("HtmlTextBoxBasicEditorBase");
					Page.RegisterClientScriptBlock("HtmlTextBoxBasicEditorBase", script);
				}
			}
		}	
		private string BreakModeScript() 
		{
			string CurlyQuotesCode = @"
	if (editor.event.keyCode == _QUOTE && editor.event.shiftKey && !" + base.ID + @"_HtmlMode) {
		var sel = editor.document.selection;
		if (sel.type == 'Control') return;
		var r = sel.createRange();
		var before = FTB_CharBefore(r);
		var after = FTB_CharAfter(r);
		var r = sel.createRange();

		if (before == 'start') {
			r.pasteHTML(_OPENCURLY);
			editor.event.cancelBubble = true;
			editor.event.returnValue = false;
			return false;
		} else if (before != ' ' && after == 'end') {
			r.pasteHTML(_CLOSECURLY);
			editor.event.cancelBubble = true;
			editor.event.returnValue = false;
			return false;
		} else if (before == ' ' && after == 'end') {
			r.pasteHTML(_OPENCURLY);
			editor.event.cancelBubble = true;
			editor.event.returnValue = false;
			return false;
		} else if (before != ' ' && after == ' ') {
			r.pasteHTML(_CLOSECURLY);
			editor.event.cancelBubble = true;
			editor.event.returnValue = false;
			return false;
		} else {
			r.pasteHTML(_OPENCURLY);
			editor.event.cancelBubble = true;
			editor.event.returnValue = false;
			return false;
		}
	}";			
			string html = "";
			switch (BreakMode) 
			{
				case BreakMode.LineBreak:
					html = @"
<script language=""javascript"">
function FTB_" + base.ID + @"_onKeyDown_LineBreak() {
	editor = " + base.ID + @"_editor;
	var _TAB = 9;
	var _ENTER = 13;
	var _QUOTE = 222;
	var _OPENCURLY = '&#8220;';
	var _CLOSECURLY = '&#8221;';

	if (editor.event.keyCode == _TAB && editor.event.ctrlKey) {
		//HtmlMode to DesignMode (Ctrl+TAB)
		if (" + base.ID + @"_HtmlMode && editor.event.keyCode == _TAB && editor.event.ctrlKey) {
			FTB_SetActiveTab(document.getElementById('" + base.ID + @"_DesignModeTab'));
			" + base.ID + @"_ChangeMode(editor,document.getElementById('" + base.ID + @"_TempFrame'),'" + base.ID + @"_Toolbar',false," + this.AutoHideToolbar.ToString().ToLower( ) + @");
		}
		//DesignMode to HtmlMode (Ctrl+TAB)
		if (!" + base.ID + @"_HtmlMode && editor.event.keyCode == _TAB && editor.event.ctrlKey) {
			FTB_SetActiveTab(document.getElementById('" + base.ID + @"_HtmlModeTab'));
			" + base.ID + @"_ChangeMode(editor,document.getElementById('" + base.ID + @"_TempFrame'),'" + base.ID + @"_Toolbar',true," + this.AutoHideToolbar.ToString().ToLower( ) + @");
		}
		" + base.ID + @"_HtmlMode = !" + base.ID + @"_HtmlMode;
	}" + ((this.EnableCurlyQuotes) ? CurlyQuotesCode : "") + @"
	// Ensure TAB key doesn't cause editor to loose focus
	if (editor.event.keyCode == _TAB) {
		editor.event.cancelBubble = true;
		editor.event.returnValue = false;
	}
	if (editor.event.keyCode == _ENTER) {
		var sel = editor.document.selection;
		if (sel.type == 'Control') {
			return;
		}
		var r = sel.createRange();
		if ((!FTB_CheckTag(r.parentElement(),'LI'))&&(!FTB_CheckTag(r.parentElement(),'H'))) {
			r.pasteHTML('<br>');
			editor.event.cancelBubble = true; 
			editor.event.returnValue = false; 
			r.select();
			r.collapse(false);
			return false;
		}
	} 
}  
</script>";
					break;
				case BreakMode.ParagraphBreak:
					html = @"
<script language=""JavaScript"">
function FTB_" + base.ID + @"_onKeyDown_ParagraphBreak() {
	editor = " + base.ID + @"_editor;
	var _TAB = 9;
	var _ENTER = 13;
	var _QUOTE = 222;
	var _OPENCURLY = '&#8220;';
	var _CLOSECURLY = '&#8221;';
	
	if (editor.event.keyCode == _TAB && editor.event.ctrlKey) {
		//HtmlMode to DesignMode (Ctrl+TAB)
		if (" + base.ID + @"_HtmlMode && editor.event.keyCode == _TAB && editor.event.ctrlKey) {
			FTB_SetActiveTab(document.getElementById('" + base.ID + @"_DesignModeTab'));
			" + base.ID + @"_ChangeMode(editor,document.getElementById('" + base.ID + @"_TempFrame'),'" + base.ID + @"_Toolbar',false," + this.AutoHideToolbar.ToString().ToLower( ) + @");
		}
		//DesignMode to HtmlMode (Ctrl+TAB)
		if (!" + base.ID + @"_HtmlMode && editor.event.keyCode == _TAB && editor.event.ctrlKey) {
			FTB_SetActiveTab(document.getElementById('" + base.ID + @"_HtmlModeTab'));
			" + base.ID + @"_ChangeMode(editor,document.getElementById('" + base.ID + @"_TempFrame'),'" + base.ID + @"_Toolbar',true," + this.AutoHideToolbar.ToString().ToLower( ) + @");
		}
		" + base.ID + @"_HtmlMode = !" + base.ID + @"_HtmlMode;
	}" + ((this.EnableCurlyQuotes) ? CurlyQuotesCode : "") + @"

	if (editor.event.keyCode == _TAB) {
		editor.event.cancelBubble = true;
		editor.event.returnValue = false;
	}
	
	//check for Ctrl pressed.  Ctrl+Tab == switch modes.  Ctrl+Enter = <br>
	if ((" + base.ID + @"_HtmlMode && editor.event.keyCode == _ENTER) || (!" + base.ID + @"_HtmlMode && editor.event.ctrlKey && editor.event.keyCode == _ENTER)) {
		var sel = editor.document.selection;
		if (sel.type == 'Control') {
			return;
		}
		var r = sel.createRange();
		if ((!FTB_CheckTag(r.parentElement(),'LI'))&&(!FTB_CheckTag(r.parentElement(),'H'))) {
			r.pasteHTML('<br>');
			editor.event.cancelBubble = true; 
			editor.event.returnValue = false; 
			r.select();
			r.collapse(false);
			return false;
		}
	}
}
</script>";			
					break;
			}
			return html;
		}

		private string OnPasteScript() 
		{
			string html = "";
			html += @"
<script language=""JavaScript"">
function FTB_" + base.ID + @"_onPaste() {";
			if (this.DisablePaste) 
			{
				html += @"
	alert('Pasting is disabled');
	return false;";
			}
			html += @"			
}
</script>";
			return html;
		}

		private string EditorStyles() 
		{
			string html = @"
<style>
td." + base.ID + @"_StartTabOn {
	font: 10pt MS Sans Serif;
	padding:1px;
	border-left: 1 solid " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
	border-right: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorLight) + @";
	border-top: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
	background-color: " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
}
td." + base.ID + @"_StartTabOff {
	font: 10pt MS Sans Serif;
	padding:1px;
	border-left: 1 solid " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
	border-right: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-top: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
	background-color: " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
}
td." + base.ID + @"_TabOn {
	font: 8pt MS Sans Serif;
	padding:1px;
	padding-left:5px;
	padding-right:5px;
	border-left: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorLight) + @";
	border-right: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-top: 1 solid " + ColorTranslator.ToHtml(this.BackColor) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	background-color: " + ColorTranslator.ToHtml(this.BackColor) + @";
}
td." + base.ID + @"_TabOffRight {
	font: 8pt MS Sans Serif;
	padding:1px;
	padding-left:5px;
	padding-right:5px;
	border-left: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-right: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-top: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
	background-color: " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
}
td." + base.ID + @"_TabOffLeft {
	font: 8pt MS Sans Serif;
	padding:1px;
	padding-left:5px;
	padding-right:5px;
	border-left: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-right: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorLight) + @";
	border-top: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(this.BackColor) + @";
	background-color: " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
}
td." + base.ID + @"_EndTab {
	font: 10pt MS Sans Serif;
	width: 100%;
	padding:1px;
	border-left: 1 solid " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
	border-right: 1 solid " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
	border-top: 1 solid " + ColorTranslator.ToHtml(this.GutterBorderColorDark) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
	background-color: " + ColorTranslator.ToHtml(this.GutterBackColor) + @";
}
td." + base.ID + @"_None {
}
td." + base.ID + @"_ButtonNormal {
	" + ((this.ToolbarBackColor != Color.Empty) ? "border: 1 solid " + ColorTranslator.ToHtml(ToolbarBackColor) + ";" : "padding: 1px;") + @"
	" + ((this.ToolbarBackColor != Color.Empty) ? "background-color:  " + ColorTranslator.ToHtml(ToolbarBackColor) + ";" : "") + @"
	font-family: MS Sans Serif;
	font-size: 10pt;
}
td." + base.ID + @"_ButtonOver {
	border-top: 1 solid " + ColorTranslator.ToHtml(ButtonStyle.OverBorderColorLight) + @";	
	border-left: 1 solid " + ColorTranslator.ToHtml(ButtonStyle.OverBorderColorLight) + @";
	border-right: 1 solid " + ColorTranslator.ToHtml(ButtonStyle.OverBorderColorDark) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(ButtonStyle.OverBorderColorDark) + @";
	" + ((ButtonStyle.OverBackColor != Color.Empty) ? "background-color: " + ColorTranslator.ToHtml(ButtonStyle.OverBackColor) + ";" : "background-image: url( " + ButtonStyle.OverBackgroundImage + ");") + @"
	font-family: MS Sans Serif;
	font-size: 10pt;
}
td." + base.ID + @"_ButtonDown {
	border-top: 1 solid " + ColorTranslator.ToHtml(ButtonStyle.DownBorderColorLight) + @";	
	border-left: 1 solid " + ColorTranslator.ToHtml(ButtonStyle.DownBorderColorLight) + @";
	border-right: 1 solid " + ColorTranslator.ToHtml(ButtonStyle.DownBorderColorDark) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(ButtonStyle.DownBorderColorDark) + @";
	" + ((ButtonStyle.DownBackColor != Color.Empty) ? "background-color: " + ColorTranslator.ToHtml(ButtonStyle.DownBackColor) + ";" : "background-image: url( " + ButtonStyle.DownBackgroundImage + ");") + @"
	font-family: MS Sans Serif;
	font-size: 10pt;
}
div." + base.ID + @"_Toolbar {
	margin-bottom: 1px;
	margin-right: 2px;
	float: left;
	" + ((ToolbarBackGroundImage) ? 
				"background-image: url(" + this.ButtonPath + "toolbar.background." + this.ButtonFileExtention + ");" :
				"background-color: " + ColorTranslator.ToHtml(ToolbarBackColor) + ";")
				+ @"
}
iframe." + base.ID + @"_iframe {
	width:100%;
	height:100%;
	border-right: 1 solid " + ColorTranslator.ToHtml(this.EditorBorderColorLight) + @";
	border-left: 1 solid " + ColorTranslator.ToHtml(this.EditorBorderColorDark) + @";
	border-top: 1 solid " + ColorTranslator.ToHtml(this.EditorBorderColorDark) + @";
	border-bottom: 1 solid " + ColorTranslator.ToHtml(this.EditorBorderColorLight) + @";
	frameBorder: 0;
}
body.FTB {";
			if (this.ScrollbarMode == ScrollbarMode.Style) 
			{
				html += @"
	scrollbar-3dlight-color: " + ColorTranslator.ToHtml(ScrollbarStyle.ThreeDLightColor) + @";
	scrollbar-arrow-color: " + ColorTranslator.ToHtml(ScrollbarStyle.ArrowColor) + @";
	scrollbar-base-color: " + ColorTranslator.ToHtml(ScrollbarStyle.BaseColor) + @";
	scrollbar-darkshadow-color: " + ColorTranslator.ToHtml(ScrollbarStyle.DarkShadowColor) + @";
	scrollbar-face-color: #" + ColorTranslator.ToHtml(ScrollbarStyle.FaceColor) + @";
	scrollbar-highlight-color: " + ColorTranslator.ToHtml(ScrollbarStyle.HighlightColor) + @";
	scrollbar-shadow-color: " + ColorTranslator.ToHtml(ScrollbarStyle.ShadowColor) + @";
	scrollbar-track-color: " + ColorTranslator.ToHtml(ScrollbarStyle.TrackColor) + @";";
			}
			html += @"
}
</style>
";			
			return html;
		}
		private void InitializeToolbars() 
		{
			if (!(Toolbars.Count > 0)) 
			{	
				if (this.ToolbarLayout != "") 
				{
					this.Toolbars = ToolbarGenerator.ToolbarsFromString(ToolbarLayout);
				} 
				else 
				{
					switch (this.AutoConfigure) 
					{
						default:
						case AutoConfigure.Default:
							this.Toolbars = ToolbarGenerator.Default;
							break;
						case AutoConfigure.EnableAll:
							this.Toolbars = ToolbarGenerator.EnableAll;
							break;
						case AutoConfigure.Alternate:
							this.Toolbars = ToolbarGenerator.Alternate;
							break;
						case AutoConfigure.Minimal:
							this.Toolbars = ToolbarGenerator.Minimal;
							break;
					}
				}
			}
		}
		private void SetUpToolbarItems() 
		{
			for (int i=0; i<Toolbars.Count; i++) 
			{
				for (int

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -