Code:
/ DotNET / DotNET / 8.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
- AssociationType.cs
- GetCertificateRequest.cs
- AutomationAttributeInfo.cs
- UriWriter.cs
- PointLightBase.cs
- ManipulationInertiaStartingEventArgs.cs
- DesignerSelectionListAdapter.cs
- XmlSignatureManifest.cs
- ActivitySurrogateSelector.cs
- RtfToXamlReader.cs
- WsatEtwTraceListener.cs
- ThousandthOfEmRealDoubles.cs
- Point3DCollectionValueSerializer.cs
- ScaleTransform.cs
- TemplateBaseAction.cs
- HtmlShim.cs
- SoapMessage.cs
- HttpCookieCollection.cs
- DataControlPagerLinkButton.cs
- CalendarSelectionChangedEventArgs.cs
- Pipe.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- QuerySettings.cs
- TextCollapsingProperties.cs
- WSSecurityXXX2005.cs
- SizeFConverter.cs
- HttpPostedFileWrapper.cs
- BindingCompleteEventArgs.cs
- TreeViewImageGenerator.cs
- ProfilePropertySettingsCollection.cs
- DesignDataSource.cs
- InputScopeManager.cs
- HtmlListAdapter.cs
- HttpContextServiceHost.cs
- XmlSchemaAny.cs
- GenericWebPart.cs
- EventRoute.cs
- WindowsProgressbar.cs
- FastEncoderStatics.cs
- ImageMap.cs
- ObjectCloneHelper.cs
- ServiceControllerDesigner.cs
- ArgIterator.cs
- WebPartsSection.cs
- AspNetRouteServiceHttpHandler.cs
- XsltLoader.cs
- TimersDescriptionAttribute.cs
- ParserOptions.cs
- documentation.cs
- DataRowChangeEvent.cs
- DuplexChannelBinder.cs
- TimelineCollection.cs
- Array.cs
- Application.cs
- TargetPerspective.cs
- XmlAggregates.cs
- BindableTemplateBuilder.cs
- ServiceTimeoutsBehavior.cs
- CodeEventReferenceExpression.cs
- ConcurrentDictionary.cs
- DirectoryInfo.cs
- SimpleFieldTemplateFactory.cs
- BamlLocalizer.cs
- ManagementOptions.cs
- Dump.cs
- ParallelActivityDesigner.cs
- ACE.cs
- StreamInfo.cs
- CustomGrammar.cs
- WorkflowEventArgs.cs
- CustomErrorCollection.cs
- hwndwrapper.cs
- RequestDescription.cs
- WebPartExportVerb.cs
- KnownColorTable.cs
- RuntimeArgumentHandle.cs
- BookmarkUndoUnit.cs
- BindableTemplateBuilder.cs
- SoapIncludeAttribute.cs
- SystemNetworkInterface.cs
- OperatingSystemVersionCheck.cs
- HtmlSelect.cs
- WindowsFormsHelpers.cs
- DataBoundLiteralControl.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- PKCS1MaskGenerationMethod.cs
- ProtocolElement.cs
- WpfPayload.cs
- DefaultEventAttribute.cs
- FSWPathEditor.cs
- RpcCryptoContext.cs
- UpdateCommand.cs
- XsdCachingReader.cs
- Version.cs
- sqlstateclientmanager.cs
- BindingBase.cs
- CheckBox.cs
- Transform.cs
- UnmanagedMemoryStream.cs
- RenderData.cs