Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WebForms / System / Web / UI / Design / WebControls / ListControls / BordersPage.cs / 1 / BordersPage.cs
using System.Design; //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Design.WebControls.ListControls { using System; using System.Design; using System.Collections; using System.Globalization; using System.ComponentModel; using System.Drawing; using System.Diagnostics; using System.Web.UI.Design.Util; using System.Web.UI.WebControls; using System.Windows.Forms; using WebControls = System.Web.UI.WebControls; using DataGrid = System.Web.UI.WebControls.DataGrid; using Button = System.Windows.Forms.Button; using CheckBox = System.Windows.Forms.CheckBox; using Label = System.Windows.Forms.Label; ////// /// The Borders page for the DataGrid and DataList controls /// ///[System.Security.Permissions.SecurityPermission(System.Security.Permissions.SecurityAction.Demand, Flags=System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode)] internal sealed class BordersPage : BaseDataListPage { private const int IDX_GRID_HORIZONTAL = 0; private const int IDX_GRID_VERTICAL = 1; private const int IDX_GRID_BOTH = 2; private const int IDX_GRID_NEITHER = 3; private NumberEdit cellPaddingEdit; private NumberEdit cellSpacingEdit; private ComboBox gridLinesCombo; private ColorComboBox borderColorCombo; private Button borderColorPickerButton; private UnitControl borderWidthUnit; /// protected override string HelpKeyword { get { if (IsDataGridMode) { return "net.Asp.DataGridProperties.Borders"; } else { return "net.Asp.DataListProperties.Borders"; } } } /// /// /// Creates the UI of the page. /// private void InitForm() { GroupLabel cellMarginGroup = new GroupLabel(); Label cellPaddingLabel = new Label(); this.cellPaddingEdit = new NumberEdit(); Label cellSpacingLabel = new Label(); this.cellSpacingEdit = new NumberEdit(); GroupLabel borderLinesGroup = new GroupLabel(); Label gridLinesLabel = new Label(); this.gridLinesCombo = new ComboBox(); Label colorLabel = new Label(); this.borderColorCombo = new ColorComboBox(); this.borderColorPickerButton = new Button(); Label borderWidthLabel = new Label(); this.borderWidthUnit = new UnitControl(); cellMarginGroup.SetBounds(4, 4, 300, 16); cellMarginGroup.Text = SR.GetString(SR.BDLBor_CellMarginsGroup); cellMarginGroup.TabStop = false; cellMarginGroup.TabIndex = 0; cellPaddingLabel.Text = SR.GetString(SR.BDLBor_CellPadding); cellPaddingLabel.SetBounds(12, 24, 120, 14); cellPaddingLabel.TabStop = false; cellPaddingLabel.TabIndex = 1; cellPaddingEdit.SetBounds(12, 40, 70, 20); cellPaddingEdit.AllowDecimal = false; cellPaddingEdit.AllowNegative = false; cellPaddingEdit.TabIndex = 2; cellPaddingEdit.TextChanged += new EventHandler(this.OnBordersChanged); cellSpacingLabel.Text = SR.GetString(SR.BDLBor_CellSpacing); cellSpacingLabel.SetBounds(160, 24, 120, 14); cellSpacingLabel.TabStop = false; cellSpacingLabel.TabIndex = 3; cellSpacingEdit.SetBounds(160, 40, 70, 20); cellSpacingEdit.AllowDecimal = false; cellSpacingEdit.AllowNegative = false; cellSpacingEdit.TabIndex = 4; cellSpacingEdit.TextChanged += new EventHandler(this.OnBordersChanged); borderLinesGroup.SetBounds(4, 70, 300, 16); borderLinesGroup.Text = SR.GetString(SR.BDLBor_BorderLinesGroup); borderLinesGroup.TabStop = false; borderLinesGroup.TabIndex = 5; gridLinesLabel.Text = SR.GetString(SR.BDLBor_GridLines); gridLinesLabel.SetBounds(12, 90, 150, 14); gridLinesLabel.TabStop = false; gridLinesLabel.TabIndex = 6; gridLinesCombo.SetBounds(12, 106, 140, 21); gridLinesCombo.DropDownStyle = ComboBoxStyle.DropDownList; gridLinesCombo.Items.Clear(); gridLinesCombo.Items.AddRange(new object[] { SR.GetString(SR.BDLBor_GL_Horz), SR.GetString(SR.BDLBor_GL_Vert), SR.GetString(SR.BDLBor_GL_Both), SR.GetString(SR.BDLBor_GL_None) }); gridLinesCombo.TabIndex = 7; gridLinesCombo.SelectedIndexChanged += new EventHandler(this.OnBordersChanged); colorLabel.Text = SR.GetString(SR.BDLBor_BorderColor); colorLabel.SetBounds(12, 134, 150, 14); colorLabel.TabStop = false; colorLabel.TabIndex = 8; borderColorCombo.SetBounds(12, 150, 140, 21); borderColorCombo.TabIndex = 9; borderColorCombo.TextChanged += new EventHandler(this.OnBordersChanged); borderColorCombo.SelectedIndexChanged += new EventHandler(this.OnBordersChanged); borderColorPickerButton.SetBounds(156, 149, 24, 22); borderColorPickerButton.Text = "..."; borderColorPickerButton.TabIndex = 10; borderColorPickerButton.FlatStyle = FlatStyle.System; borderColorPickerButton.Click += new EventHandler(this.OnClickColorPicker); borderColorPickerButton.AccessibleName = SR.GetString(SR.BDLBor_ChooseColorButton); borderColorPickerButton.AccessibleDescription = SR.GetString(SR.BDLBor_ChooseColorDesc); borderWidthLabel.Text = SR.GetString(SR.BDLBor_BorderWidth); borderWidthLabel.SetBounds(12, 178, 150, 14); borderWidthLabel.TabStop = false; borderWidthLabel.TabIndex = 11; borderWidthUnit.SetBounds(12, 194, 102, 22); borderWidthUnit.AllowNegativeValues = false; borderWidthUnit.AllowPercentValues = false; borderWidthUnit.DefaultUnit = UnitControl.UNIT_PX; borderWidthUnit.TabIndex = 12; borderWidthUnit.Changed += new EventHandler(OnBordersChanged); borderWidthUnit.ValueAccessibleDescription = SR.GetString(SR.BDLBor_BorderWidthValueDesc); borderWidthUnit.ValueAccessibleName = SR.GetString(SR.BDLBor_BorderWidthValueName); borderWidthUnit.UnitAccessibleDescription = SR.GetString(SR.BDLBor_BorderWidthUnitDesc); borderWidthUnit.UnitAccessibleName = SR.GetString(SR.BDLBor_BorderWidthUnitName); this.Text = SR.GetString(SR.BDLBor_Text); this.AccessibleDescription = SR.GetString(SR.BDLBor_Desc); this.Size = new Size(308, 156); this.CommitOnDeactivate = true; this.Icon = new Icon(this.GetType(), "BordersPage.ico"); this.Controls.Clear(); this.Controls.AddRange(new Control[] { borderWidthUnit, borderWidthLabel, borderColorPickerButton, borderColorCombo, colorLabel, gridLinesCombo, gridLinesLabel, borderLinesGroup, cellSpacingEdit, cellSpacingLabel, cellPaddingEdit, cellPaddingLabel, cellMarginGroup }); } ////// /// Initializes the page before it can be loaded with the component. /// private void InitPage() { cellPaddingEdit.Clear(); cellSpacingEdit.Clear(); gridLinesCombo.SelectedIndex = -1; borderColorCombo.Color = null; borderWidthUnit.Value = null; } ////// /// Loads the component into the page. /// protected override void LoadComponent() { InitPage(); BaseDataList bdl = (BaseDataList)GetBaseControl(); int cellPadding = bdl.CellPadding; if (cellPadding != -1) cellPaddingEdit.Text = (cellPadding).ToString(NumberFormatInfo.CurrentInfo); int cellSpacing = bdl.CellSpacing; if (cellSpacing != -1) cellSpacingEdit.Text = (cellSpacing).ToString(NumberFormatInfo.CurrentInfo); switch (bdl.GridLines) { case GridLines.None: gridLinesCombo.SelectedIndex = IDX_GRID_NEITHER; break; case GridLines.Horizontal: gridLinesCombo.SelectedIndex = IDX_GRID_HORIZONTAL; break; case GridLines.Vertical: gridLinesCombo.SelectedIndex = IDX_GRID_VERTICAL; break; case GridLines.Both: gridLinesCombo.SelectedIndex = IDX_GRID_BOTH; break; } borderColorCombo.Color = ColorTranslator.ToHtml(bdl.BorderColor); borderWidthUnit.Value = bdl.BorderWidth.ToString(CultureInfo.CurrentCulture); } ////// /// Handles changes in the border settings. /// private void OnBordersChanged(object source, EventArgs e) { if (IsLoading()) return; SetDirty(); } ////// /// Invokes the color picker to pick the grid color. /// private void OnClickColorPicker(object source, EventArgs e) { string color = borderColorCombo.Color; color = ColorBuilder.BuildColor(GetBaseControl(), this, color); if (color != null) { borderColorCombo.Color = color; OnBordersChanged(borderColorCombo, EventArgs.Empty); } } ////// /// Saves the component loaded into the page. /// protected override void SaveComponent() { BaseDataList bdl = (BaseDataList)GetBaseControl(); try { string cellPadding = cellPaddingEdit.Text.Trim(); if (cellPadding.Length != 0) bdl.CellPadding = Int32.Parse(cellPadding, CultureInfo.CurrentCulture); else bdl.CellPadding = -1; } catch { if (bdl.CellPadding != -1) { cellPaddingEdit.Text = (bdl.CellPadding).ToString(NumberFormatInfo.CurrentInfo); } else { cellPaddingEdit.Clear(); } } try { string cellSpacing = cellSpacingEdit.Text.Trim(); if (cellSpacing.Length != 0) bdl.CellSpacing = Int32.Parse(cellSpacing, CultureInfo.CurrentCulture); else bdl.CellSpacing = -1; } catch { if (bdl.CellSpacing != -1) { cellSpacingEdit.Text = (bdl.CellSpacing).ToString(NumberFormatInfo.CurrentInfo); } else { cellSpacingEdit.Clear(); } } switch (gridLinesCombo.SelectedIndex) { case IDX_GRID_HORIZONTAL: bdl.GridLines = GridLines.Horizontal; break; case IDX_GRID_VERTICAL: bdl.GridLines = GridLines.Vertical; break; case IDX_GRID_BOTH: bdl.GridLines = GridLines.Both; break; case IDX_GRID_NEITHER: bdl.GridLines = GridLines.None; break; } try { string colorValue = borderColorCombo.Color; bdl.BorderColor = ColorTranslator.FromHtml(colorValue); } catch { borderColorCombo.Color = ColorTranslator.ToHtml(bdl.BorderColor); } try { string borderWidth = borderWidthUnit.Value; Unit unitValue = Unit.Empty; if (borderWidth != null) unitValue = Unit.Parse(borderWidth, CultureInfo.CurrentCulture); bdl.BorderWidth = unitValue; } catch { borderWidthUnit.Value = bdl.BorderWidth.ToString(CultureInfo.CurrentCulture); } } ////// /// Sets the component that is to be edited in the page. /// public override void SetComponent(IComponent component) { base.SetComponent(component); InitForm(); } } } // 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
- HostingEnvironmentException.cs
- PolyQuadraticBezierSegment.cs
- SafeCertificateContext.cs
- SamlAssertionKeyIdentifierClause.cs
- HostingPreferredMapPath.cs
- CodeNamespaceImportCollection.cs
- URLIdentityPermission.cs
- DocumentSchemaValidator.cs
- StandardCommands.cs
- GridItemCollection.cs
- ObjectManager.cs
- ArrayConverter.cs
- FlowPosition.cs
- DataRowChangeEvent.cs
- EventProviderWriter.cs
- StatusBar.cs
- WebPartCatalogAddVerb.cs
- RoleManagerSection.cs
- C14NUtil.cs
- IgnorePropertiesAttribute.cs
- PageThemeParser.cs
- ConfigXmlComment.cs
- DockingAttribute.cs
- TagPrefixAttribute.cs
- ModuleConfigurationInfo.cs
- RealProxy.cs
- DataGridView.cs
- StylusPointPropertyUnit.cs
- datacache.cs
- WebPageTraceListener.cs
- ThreadPool.cs
- Visitor.cs
- TextClipboardData.cs
- GACMembershipCondition.cs
- DependencySource.cs
- ChildrenQuery.cs
- DateTimeStorage.cs
- MetadataException.cs
- IgnoreSection.cs
- ComponentChangingEvent.cs
- CookielessHelper.cs
- Point3DAnimation.cs
- TextEditorTyping.cs
- Internal.cs
- AggregateException.cs
- ObjectDisposedException.cs
- SqlResolver.cs
- LookupNode.cs
- TiffBitmapDecoder.cs
- SurrogateEncoder.cs
- HtmlInputControl.cs
- Style.cs
- DependencyObjectValidator.cs
- CodeDelegateCreateExpression.cs
- EventLog.cs
- FileLoadException.cs
- UpdatableWrapper.cs
- CompressStream.cs
- CategoryAttribute.cs
- PageWrapper.cs
- EpmHelper.cs
- X509Extension.cs
- RetrieveVirtualItemEventArgs.cs
- TextViewSelectionProcessor.cs
- InputProcessorProfilesLoader.cs
- TableLayoutPanel.cs
- EpmAttributeNameBuilder.cs
- XPathException.cs
- TaiwanCalendar.cs
- ComponentEditorPage.cs
- InterleavedZipPartStream.cs
- CodeDelegateCreateExpression.cs
- ColorTranslator.cs
- TreeNodeEventArgs.cs
- XsdBuilder.cs
- TextDocumentView.cs
- XhtmlBasicLabelAdapter.cs
- DictionaryBase.cs
- NavigationPropertySingletonExpression.cs
- Main.cs
- Guid.cs
- ThaiBuddhistCalendar.cs
- DateTimeFormat.cs
- ZoneButton.cs
- GeometryGroup.cs
- PackagingUtilities.cs
- ConnectionProviderAttribute.cs
- SchemaMapping.cs
- TextStore.cs
- DataBoundLiteralControl.cs
- StringArrayConverter.cs
- IPipelineRuntime.cs
- BinHexDecoder.cs
- BindUriHelper.cs
- ConfigPathUtility.cs
- AutomationEvent.cs
- PathFigureCollection.cs
- LinqDataView.cs
- TextElementEnumerator.cs
- PropertyEntry.cs