Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / DataGridViewCellStyleEditor.cs / 1 / DataGridViewCellStyleEditor.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Windows.Forms.Design { using System.Runtime.InteropServices; using System.Diagnostics; using System; using System.ComponentModel; using System.ComponentModel.Design; using Microsoft.Win32; using System.Drawing; using System.Windows.Forms; using System.Windows.Forms.Design; using System.Drawing.Design; internal class DataGridViewCellStyleEditor : UITypeEditor { private DataGridViewCellStyleBuilder builderDialog; private object value; ////// /// Edits the given object value using the editor style provided by /// GetEditorStyle. A service provider is provided so that any /// required editing services can be obtained. /// public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { this.value = value; Debug.Assert(provider != null, "No service provider; we cannot edit the value"); if (provider != null) { IWindowsFormsEditorService edSvc = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService)); IUIService uiService = (IUIService) provider.GetService(typeof(IUIService)); IComponent comp = context.Instance as IComponent; Debug.Assert(edSvc != null, "No editor service; we cannot edit the value"); if (edSvc != null) { if (builderDialog == null) { builderDialog = new DataGridViewCellStyleBuilder(provider, comp); } if (uiService != null) { builderDialog.Font = (Font) uiService.Styles["DialogFont"]; } DataGridViewCellStyle dgvcs = value as DataGridViewCellStyle; if (dgvcs != null) { builderDialog.CellStyle = dgvcs; } builderDialog.Context = context; //IntPtr hwndFocus = UnsafeNativeMethods.GetFocus(); try { if (builderDialog.ShowDialog() == DialogResult.OK) { this.value = builderDialog.CellStyle; } } finally { //if (hwndFocus != IntPtr.Zero) { // UnsafeNativeMethods.SetFocus(new HandleRef(null, hwndFocus)); //} } } } // Now pull out the updated value, if there was one. // value = this.value; this.value = null; return value; } ////// /// Retrieves the editing style of the Edit method. If the method /// is not supported, this will return None. /// public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context) { return UITypeEditorEditStyle.Modal; } } } // 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
- WSSecurityPolicy.cs
- OrderingExpression.cs
- DataGridViewLinkColumn.cs
- DataStreamFromComStream.cs
- FigureHelper.cs
- Resources.Designer.cs
- AutomationPropertyChangedEventArgs.cs
- MaskInputRejectedEventArgs.cs
- NamespaceQuery.cs
- ComplexTypeEmitter.cs
- PublisherIdentityPermission.cs
- AutoResizedEvent.cs
- TableLayoutSettingsTypeConverter.cs
- MenuCommandService.cs
- Drawing.cs
- XmlWrappingReader.cs
- WpfKnownMember.cs
- ProtocolsSection.cs
- XmlImplementation.cs
- SubclassTypeValidatorAttribute.cs
- WebPartActionVerb.cs
- EventData.cs
- DataViewListener.cs
- Errors.cs
- ContainerAction.cs
- SqlClientWrapperSmiStream.cs
- SecurityBindingElementImporter.cs
- XamlSerializerUtil.cs
- PointLightBase.cs
- ChannelProtectionRequirements.cs
- PageClientProxyGenerator.cs
- LocalizedNameDescriptionPair.cs
- HttpListenerPrefixCollection.cs
- UnsafeNativeMethods.cs
- SelectionPattern.cs
- DataTemplate.cs
- RegexCharClass.cs
- ScalarConstant.cs
- CngKey.cs
- WeakEventManager.cs
- DeploymentSection.cs
- Propagator.Evaluator.cs
- HierarchicalDataSourceControl.cs
- TypeKeyValue.cs
- RelativeSource.cs
- FixedSOMPageConstructor.cs
- RootBrowserWindowProxy.cs
- AutoGeneratedFieldProperties.cs
- LineServices.cs
- TableHeaderCell.cs
- DropDownList.cs
- CompiledQuery.cs
- PartialList.cs
- NonBatchDirectoryCompiler.cs
- CompressEmulationStream.cs
- TreeNodeClickEventArgs.cs
- EntityContainer.cs
- TextParagraphCache.cs
- HostingEnvironmentSection.cs
- PropertyGridCommands.cs
- ObjectSet.cs
- VisualStyleInformation.cs
- UserPreferenceChangingEventArgs.cs
- DeviceSpecific.cs
- ReachDocumentSequenceSerializerAsync.cs
- DependencyObjectCodeDomSerializer.cs
- CriticalHandle.cs
- LocatorBase.cs
- ThreadStaticAttribute.cs
- DataGridViewControlCollection.cs
- EventHandlersDesigner.cs
- LayoutTableCell.cs
- ChannelManager.cs
- PasswordRecoveryDesigner.cs
- ObjectQueryProvider.cs
- LocalFileSettingsProvider.cs
- ToolStripSplitStackLayout.cs
- GroupBox.cs
- ToolboxItemFilterAttribute.cs
- ImageAnimator.cs
- DiagnosticStrings.cs
- ProfilePropertyNameValidator.cs
- ArrangedElement.cs
- TextParaClient.cs
- CatalogZone.cs
- ObjectToken.cs
- WebHeaderCollection.cs
- NamespaceQuery.cs
- EncryptedPackage.cs
- ObservableCollection.cs
- ControlPaint.cs
- ParseNumbers.cs
- InternalRelationshipCollection.cs
- RowCache.cs
- AstNode.cs
- TransformFinalBlockRequest.cs
- HttpAsyncResult.cs
- NominalTypeEliminator.cs
- BindingMemberInfo.cs
- SchemaInfo.cs