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
- LateBoundBitmapDecoder.cs
- AttachedAnnotationChangedEventArgs.cs
- SqlDataSourceFilteringEventArgs.cs
- RightsManagementResourceHelper.cs
- TemplateLookupAction.cs
- WindowsUpDown.cs
- XmlSortKeyAccumulator.cs
- HitTestDrawingContextWalker.cs
- TitleStyle.cs
- BufferedGraphicsManager.cs
- FastEncoderWindow.cs
- FontNameEditor.cs
- ApplicationProxyInternal.cs
- ScriptReference.cs
- ExpandCollapsePattern.cs
- ToolStripItemTextRenderEventArgs.cs
- ServiceThrottlingBehavior.cs
- FormatException.cs
- XmlSchemaFacet.cs
- _LocalDataStore.cs
- LoginName.cs
- TrackingParameters.cs
- MouseGestureConverter.cs
- SafeBitVector32.cs
- CodeTypeMemberCollection.cs
- RuleCache.cs
- ShaderRenderModeValidation.cs
- PolicyManager.cs
- errorpatternmatcher.cs
- DecimalFormatter.cs
- ComponentRenameEvent.cs
- WebScriptEnablingBehavior.cs
- DataQuery.cs
- BaseComponentEditor.cs
- ConstrainedDataObject.cs
- DateTimeStorage.cs
- GenericAuthenticationEventArgs.cs
- TreeNodeClickEventArgs.cs
- XPathScanner.cs
- RestClientProxyHandler.cs
- UnmanagedMemoryStreamWrapper.cs
- StreamBodyWriter.cs
- FileSystemEventArgs.cs
- PolicyUnit.cs
- TextBreakpoint.cs
- SecurityTokenProviderContainer.cs
- LayoutInformation.cs
- RelationshipEnd.cs
- _SslSessionsCache.cs
- TransformValueSerializer.cs
- EndpointDiscoveryMetadataCD1.cs
- _AcceptOverlappedAsyncResult.cs
- StringFormat.cs
- DBDataPermission.cs
- EmptyStringExpandableObjectConverter.cs
- EventWaitHandle.cs
- diagnosticsswitches.cs
- TreeNodeCollection.cs
- TemplateBindingExtensionConverter.cs
- BitmapEffectrendercontext.cs
- ZipIOBlockManager.cs
- xml.cs
- metadatamappinghashervisitor.cs
- TransactionFlowProperty.cs
- XmlFormatExtensionAttribute.cs
- SqlBuilder.cs
- NumericUpDownAcceleration.cs
- FontStretch.cs
- HandlerMappingMemo.cs
- ConfigurationException.cs
- Expressions.cs
- SetStateDesigner.cs
- XmlWriterTraceListener.cs
- MaterializeFromAtom.cs
- EnumMemberAttribute.cs
- ButtonField.cs
- XmlSchemaExternal.cs
- Transactions.cs
- PropertyFilterAttribute.cs
- Expander.cs
- ByteKeyFrameCollection.cs
- Helpers.cs
- TreeView.cs
- DataGridrowEditEndingEventArgs.cs
- StreamWithDictionary.cs
- AutomationPropertyInfo.cs
- ToolStripScrollButton.cs
- StorageModelBuildProvider.cs
- NameSpaceEvent.cs
- DbProviderConfigurationHandler.cs
- VerticalAlignConverter.cs
- figurelength.cs
- SelectedPathEditor.cs
- ListViewCancelEventArgs.cs
- Menu.cs
- ListBindingHelper.cs
- String.cs
- XPathNodePointer.cs
- DbConnectionFactory.cs
- XmlSchemaAttributeGroupRef.cs