Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / Designer / WinForms / System / WinForms / Design / FileNameEditor.cs / 1 / FileNameEditor.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* */ namespace System.Windows.Forms.Design { using System.Runtime.Serialization.Formatters; using System; using System.ComponentModel; using System.ComponentModel.Design; using System.Design; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Drawing; using System.Drawing.Design; using System.Windows.Forms; using Microsoft.Win32; ////// /// public class FileNameEditor : UITypeEditor { private OpenFileDialog openFileDialog; ////// Provides an /// editor for filenames. ////// /// 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. /// [SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")] // everything in this assembly is full trust. public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value) { Debug.Assert(provider != null, "No service provider; we cannot edit the value"); if (provider != null) { IWindowsFormsEditorService edSvc = (IWindowsFormsEditorService)provider.GetService(typeof(IWindowsFormsEditorService)); Debug.Assert(edSvc != null, "No editor service; we cannot edit the value"); if (edSvc != null) { if (openFileDialog == null) { openFileDialog = new OpenFileDialog(); InitializeDialog(openFileDialog); } if (value is string) { openFileDialog.FileName = (string)value; } if (openFileDialog.ShowDialog() == DialogResult.OK) { value = openFileDialog.FileName; } } } return value; } ////// /// [SuppressMessage("Microsoft.Security", "CA2123:OverrideLinkDemandsShouldBeIdenticalToBase")] // everything in this assembly is full trust. public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context) { return UITypeEditorEditStyle.Modal; } ///Gets the editing style of the Edit method. If the method /// is not supported, this will return None. ////// /// Initializes the open file dialog when it is created. This gives you /// an opportunity to configure the dialog as you please. The default /// implementation provides a generic file filter and title. /// [SuppressMessage("Microsoft.Design", "CA1011:ConsiderPassingBaseTypesAsParameters")] protected virtual void InitializeDialog(OpenFileDialog openFileDialog) { openFileDialog.Filter = SR.GetString(SR.GenericFileFilter); openFileDialog.Title = SR.GetString(SR.GenericOpenFile); } } } // 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
- NavigatingCancelEventArgs.cs
- Int32EqualityComparer.cs
- DependencyObjectPropertyDescriptor.cs
- KeyValuePair.cs
- HttpGetProtocolReflector.cs
- XmlnsCompatibleWithAttribute.cs
- DataServiceRequestOfT.cs
- SqlNodeAnnotation.cs
- SizeAnimationUsingKeyFrames.cs
- EntityWrapper.cs
- MissingMemberException.cs
- InternalPermissions.cs
- ComponentResourceManager.cs
- CookieParameter.cs
- OracleTimeSpan.cs
- MultiSelector.cs
- AutoResizedEvent.cs
- XmlCustomFormatter.cs
- SystemIcmpV4Statistics.cs
- SelectionItemProviderWrapper.cs
- DependencyPropertyChangedEventArgs.cs
- InvalidEnumArgumentException.cs
- FatalException.cs
- SchemaImporterExtensionElement.cs
- X509Certificate2Collection.cs
- TreeViewAutomationPeer.cs
- LineInfo.cs
- StreamGeometry.cs
- DriveInfo.cs
- PrintPreviewGraphics.cs
- listitem.cs
- CompositeCollection.cs
- HScrollProperties.cs
- EasingFunctionBase.cs
- BamlBinaryReader.cs
- RegexMatchCollection.cs
- CodeAccessPermission.cs
- TcpServerChannel.cs
- SqlClientFactory.cs
- ConfigXmlAttribute.cs
- Opcode.cs
- ClassicBorderDecorator.cs
- InitiatorSessionSymmetricTransportSecurityProtocol.cs
- BamlMapTable.cs
- HierarchicalDataBoundControlAdapter.cs
- SynchronizedDispatch.cs
- ClipboardData.cs
- InstancePersistenceCommand.cs
- ButtonColumn.cs
- XmlReaderDelegator.cs
- Dictionary.cs
- RoleService.cs
- DescriptionAttribute.cs
- DataServiceSaveChangesEventArgs.cs
- ServicePoint.cs
- DataGridViewCell.cs
- autovalidator.cs
- ProfileProvider.cs
- ExceptionHelpers.cs
- FloatUtil.cs
- ViewSimplifier.cs
- SchemaElementDecl.cs
- AlignmentYValidation.cs
- PlacementWorkspace.cs
- ScriptIgnoreAttribute.cs
- ProxyHwnd.cs
- PathFigureCollectionConverter.cs
- DropDownButton.cs
- BulletDecorator.cs
- HyperLinkField.cs
- CodeEntryPointMethod.cs
- DataServiceBuildProvider.cs
- RequestQueue.cs
- HtmlControl.cs
- TextEffect.cs
- FunctionDescription.cs
- CorrelationService.cs
- CheckBox.cs
- XmlNullResolver.cs
- GridViewHeaderRowPresenter.cs
- ToolStrip.cs
- NativeBuffer.cs
- CancelRequestedRecord.cs
- DispatcherHooks.cs
- AvTraceDetails.cs
- ChameleonKey.cs
- NewItemsContextMenuStrip.cs
- BaseResourcesBuildProvider.cs
- PropertyPath.cs
- AmbientValueAttribute.cs
- WebRequestModuleElementCollection.cs
- MatrixTransform3D.cs
- SafeFileHandle.cs
- ServiceHost.cs
- EventManager.cs
- TdsParameterSetter.cs
- BridgeDataRecord.cs
- SrgsDocumentParser.cs
- CommandConverter.cs
- ConfigurationPropertyAttribute.cs