Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / WebControls / FormViewAutoFormat.cs / 1 / FormViewAutoFormat.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design.WebControls { using System.ComponentModel.Design; using System.Data; using System.Design; using System.Diagnostics; using System.Drawing; using System.Globalization; using System.Text; using System.Web.UI.WebControls; internal sealed class FormViewAutoFormat : DesignerAutoFormat { private string headerForeColor; private string headerBackColor; private int headerFont; private string footerForeColor; private string footerBackColor; private int footerFont; private string borderColor; private string borderWidth; private int borderStyle = -1; private int gridLines = -1; private int cellSpacing; private int cellPadding = -1; private string foreColor; private string backColor; private string rowForeColor; private string rowBackColor; private int itemFont; private string editRowForeColor; private string editRowBackColor; private int editRowFont; private string pagerForeColor; private string pagerBackColor; private int pagerFont; private int pagerAlign; private int pagerButtons; const int FONT_BOLD = 1; const int FONT_ITALIC = 2; public FormViewAutoFormat(DataRow schemeData) : base(SR.GetString(schemeData["SchemeName"].ToString())) { Load(schemeData); } public override void Apply(Control control) { Debug.Assert(control is FormView, "FormViewAutoFormat:ApplyScheme- control is not FormView"); if (control is FormView) { Apply(control as FormView); } } private void Apply(FormView view) { view.HeaderStyle.ForeColor = ColorTranslator.FromHtml(headerForeColor); view.HeaderStyle.BackColor = ColorTranslator.FromHtml(headerBackColor); view.HeaderStyle.Font.Bold = ((headerFont & FONT_BOLD) != 0); view.HeaderStyle.Font.Italic = ((headerFont & FONT_ITALIC) != 0); view.HeaderStyle.Font.ClearDefaults(); view.FooterStyle.ForeColor = ColorTranslator.FromHtml(footerForeColor); view.FooterStyle.BackColor = ColorTranslator.FromHtml(footerBackColor); view.FooterStyle.Font.Bold = ((footerFont & FONT_BOLD) != 0); view.FooterStyle.Font.Italic = ((footerFont & FONT_ITALIC) != 0); view.FooterStyle.Font.ClearDefaults(); view.BorderWidth = new Unit(borderWidth, CultureInfo.InvariantCulture); switch (gridLines) { case 0: view.GridLines = GridLines.None; break; case 1: view.GridLines = GridLines.Horizontal; break; case 2: view.GridLines = GridLines.Vertical; break; case 3: view.GridLines = GridLines.Both; break; default: view.GridLines = GridLines.None; break; } if ((borderStyle >= 0) && (borderStyle <= 9)) { view.BorderStyle = (System.Web.UI.WebControls.BorderStyle)borderStyle; } else { view.BorderStyle = System.Web.UI.WebControls.BorderStyle.NotSet; } view.BorderColor = ColorTranslator.FromHtml(borderColor); view.CellPadding = cellPadding; view.CellSpacing = cellSpacing; view.ForeColor = ColorTranslator.FromHtml(foreColor); view.BackColor = ColorTranslator.FromHtml(backColor); view.RowStyle.ForeColor = ColorTranslator.FromHtml(rowForeColor); view.RowStyle.BackColor = ColorTranslator.FromHtml(rowBackColor); view.RowStyle.Font.Bold = ((itemFont & FONT_BOLD) != 0); view.RowStyle.Font.Italic = ((itemFont & FONT_ITALIC) != 0); view.RowStyle.Font.ClearDefaults(); view.EditRowStyle.ForeColor = ColorTranslator.FromHtml(editRowForeColor); view.EditRowStyle.BackColor = ColorTranslator.FromHtml(editRowBackColor); view.EditRowStyle.Font.Bold = ((editRowFont & FONT_BOLD) != 0); view.EditRowStyle.Font.Italic = ((editRowFont & FONT_ITALIC) != 0); view.EditRowStyle.Font.ClearDefaults(); view.PagerStyle.ForeColor = ColorTranslator.FromHtml(pagerForeColor); view.PagerStyle.BackColor = ColorTranslator.FromHtml(pagerBackColor); view.PagerStyle.Font.Bold = ((pagerFont & FONT_BOLD) != 0); view.PagerStyle.Font.Italic = ((pagerFont & FONT_ITALIC) != 0); view.PagerStyle.HorizontalAlign = (HorizontalAlign)pagerAlign; view.PagerStyle.Font.ClearDefaults(); view.PagerSettings.Mode = (PagerButtons)pagerButtons; } private int GetIntProperty(string propertyTag, DataRow schemeData) { object data = schemeData[propertyTag]; if ((data != null) && !data.Equals(DBNull.Value)) return Int32.Parse(data.ToString(), CultureInfo.InvariantCulture); else return 0; } private int GetIntProperty(string propertyTag, int defaultValue, DataRow schemeData) { object data = schemeData[propertyTag]; if ((data != null) && !data.Equals(DBNull.Value)) return Int32.Parse(data.ToString(), CultureInfo.InvariantCulture); else return defaultValue; } public override Control GetPreviewControl(Control runtimeControl) { Control control = base.GetPreviewControl(runtimeControl); if (control != null) { IDesignerHost host = (IDesignerHost)runtimeControl.Site.GetService(typeof(IDesignerHost)); FormView formView = control as FormView; if (formView != null && host != null) { TemplateBuilder itemTemplate = formView.ItemTemplate as TemplateBuilder; if ((itemTemplate != null && itemTemplate.Text.Length == 0) || formView.ItemTemplate == null) { string text = "#### ####
#### ####
#### ####
#### ####"; formView.ItemTemplate = ControlParser.ParseTemplate(host, text); formView.RowStyle.HorizontalAlign = HorizontalAlign.Center; } formView.HorizontalAlign = HorizontalAlign.Center; formView.Width = new Unit(80, UnitType.Percentage); } } return control; } private string GetStringProperty(string propertyTag, DataRow schemeData) { object data = schemeData[propertyTag]; if ((data != null) && !data.Equals(DBNull.Value)) return data.ToString(); else return String.Empty; } private void Load(DataRow schemeData) { Debug.Assert(schemeData != null); foreColor = GetStringProperty("ForeColor", schemeData); backColor = GetStringProperty("BackColor", schemeData); borderColor = GetStringProperty("BorderColor", schemeData); borderWidth = GetStringProperty("BorderWidth", schemeData); borderStyle = GetIntProperty("BorderStyle", -1, schemeData); cellSpacing = GetIntProperty("CellSpacing", schemeData); cellPadding = GetIntProperty("CellPadding", -1, schemeData); gridLines = GetIntProperty("GridLines", -1, schemeData); rowForeColor = GetStringProperty("RowForeColor", schemeData); rowBackColor = GetStringProperty("RowBackColor", schemeData); itemFont = GetIntProperty("RowFont", schemeData); editRowForeColor = GetStringProperty("EditRowForeColor", schemeData); editRowBackColor = GetStringProperty("EditRowBackColor", schemeData); editRowFont = GetIntProperty("EditRowFont", schemeData); headerForeColor = GetStringProperty("HeaderForeColor", schemeData); headerBackColor = GetStringProperty("HeaderBackColor", schemeData); headerFont = GetIntProperty("HeaderFont", schemeData); footerForeColor = GetStringProperty("FooterForeColor", schemeData); footerBackColor = GetStringProperty("FooterBackColor", schemeData); footerFont = GetIntProperty("FooterFont", schemeData); pagerForeColor = GetStringProperty("PagerForeColor", schemeData); pagerBackColor = GetStringProperty("PagerBackColor", schemeData); pagerFont = GetIntProperty("PagerFont", schemeData); pagerAlign = GetIntProperty("PagerAlign", schemeData); pagerButtons = GetIntProperty("PagerButtons", 1, schemeData); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ResourceReferenceKeyNotFoundException.cs
- CodeAttributeArgumentCollection.cs
- ChannelManager.cs
- SelectionProcessor.cs
- Stack.cs
- NamespaceEmitter.cs
- ColorAnimationBase.cs
- WebPartConnectionCollection.cs
- EntryPointNotFoundException.cs
- MetadataException.cs
- ScriptManagerProxy.cs
- NavigationPropertyEmitter.cs
- TypeResolvingOptions.cs
- FixedSchema.cs
- XmlReaderSettings.cs
- GeometryGroup.cs
- MarkupWriter.cs
- PrintPreviewDialog.cs
- XmlDsigSep2000.cs
- AsymmetricKeyExchangeFormatter.cs
- securitycriticaldata.cs
- InternalConfigRoot.cs
- TemplateControlParser.cs
- MessageQueueConverter.cs
- FixedTextBuilder.cs
- GraphicsContext.cs
- TypeLoadException.cs
- ScriptMethodAttribute.cs
- TableParagraph.cs
- Canvas.cs
- Blend.cs
- ColumnWidthChangedEvent.cs
- TransformerConfigurationWizardBase.cs
- CompilerCollection.cs
- XPathNodeIterator.cs
- TextLineBreak.cs
- DateTimePicker.cs
- RichTextBoxContextMenu.cs
- XMLSchema.cs
- SmtpLoginAuthenticationModule.cs
- SmtpNegotiateAuthenticationModule.cs
- DbDataRecord.cs
- HtmlListAdapter.cs
- HelpEvent.cs
- Decorator.cs
- CfgParser.cs
- ParentQuery.cs
- BamlVersionHeader.cs
- XmlReader.cs
- RSAPKCS1KeyExchangeFormatter.cs
- HttpCapabilitiesEvaluator.cs
- RemoteWebConfigurationHostServer.cs
- GeometryGroup.cs
- StylusPlugInCollection.cs
- DoubleCollection.cs
- ToolStripItemDataObject.cs
- ButtonAutomationPeer.cs
- ToolStripKeyboardHandlingService.cs
- XmlSchemaSimpleTypeRestriction.cs
- ExpandCollapsePattern.cs
- Resources.Designer.cs
- ResourceAttributes.cs
- BinaryNode.cs
- ReliableMessagingVersionConverter.cs
- SecurityUtils.cs
- SizeValueSerializer.cs
- ColumnWidthChangedEvent.cs
- Throw.cs
- SoapSchemaImporter.cs
- ErrorInfoXmlDocument.cs
- HtmlGenericControl.cs
- ConfigurationValidatorBase.cs
- MessageFilterException.cs
- SchemaImporter.cs
- _ProxyRegBlob.cs
- QueryContinueDragEvent.cs
- RelatedCurrencyManager.cs
- StylusSystemGestureEventArgs.cs
- XamlReaderHelper.cs
- XsltCompileContext.cs
- SQLInt64.cs
- FindProgressChangedEventArgs.cs
- SpecularMaterial.cs
- CryptographicAttribute.cs
- ServiceNotStartedException.cs
- MaskedTextBoxTextEditor.cs
- WCFModelStrings.Designer.cs
- XmlSchemaAll.cs
- dataobject.cs
- FocusWithinProperty.cs
- EventTask.cs
- MyContact.cs
- XPathAxisIterator.cs
- ToolStripRenderer.cs
- TraceListeners.cs
- LineGeometry.cs
- JsonGlobals.cs
- RecordsAffectedEventArgs.cs
- CorrelationManager.cs
- CodeSnippetExpression.cs