Code:
/ DotNET / DotNET / 8.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
- ProfileEventArgs.cs
- AdPostCacheSubstitution.cs
- MetadataItemSerializer.cs
- DocumentEventArgs.cs
- ObservableDictionary.cs
- MenuItem.cs
- UnsafeNativeMethods.cs
- KnownTypesHelper.cs
- ItemAutomationPeer.cs
- CheckBoxPopupAdapter.cs
- InternalPolicyElement.cs
- QueryStatement.cs
- TextSelection.cs
- ScrollChangedEventArgs.cs
- RuntimeIdentifierPropertyAttribute.cs
- PowerModeChangedEventArgs.cs
- Events.cs
- InvalidCastException.cs
- WindowsSspiNegotiation.cs
- ContainerUIElement3D.cs
- CodeCompiler.cs
- AssemblySettingAttributes.cs
- EditingScopeUndoUnit.cs
- DataServiceQueryException.cs
- X509Certificate2Collection.cs
- ProgressBarBrushConverter.cs
- DesignerSerializationVisibilityAttribute.cs
- StorageAssociationTypeMapping.cs
- TokenBasedSetEnumerator.cs
- documentsequencetextview.cs
- OdbcConnectionOpen.cs
- IPPacketInformation.cs
- MeshGeometry3D.cs
- IPPacketInformation.cs
- CommandHelpers.cs
- DataGridViewMethods.cs
- PreservationFileReader.cs
- EmbeddedMailObjectsCollection.cs
- HwndMouseInputProvider.cs
- ServicePoint.cs
- Walker.cs
- GlyphRunDrawing.cs
- ContentWrapperAttribute.cs
- X509ChainPolicy.cs
- ReadOnlyAttribute.cs
- GuidelineCollection.cs
- FramingFormat.cs
- RelOps.cs
- OdbcUtils.cs
- Schema.cs
- ImmutableClientRuntime.cs
- CallbackException.cs
- CollectionChangeEventArgs.cs
- BindingExpressionBase.cs
- NativeActivity.cs
- Keyboard.cs
- StateWorkerRequest.cs
- ActivityExecutionContext.cs
- ColumnProvider.cs
- figurelengthconverter.cs
- Update.cs
- RightsManagementEncryptedStream.cs
- StickyNoteHelper.cs
- ObjectDataSourceEventArgs.cs
- FixedSOMElement.cs
- XhtmlBasicControlAdapter.cs
- Property.cs
- WindowsGraphics2.cs
- ConfigurationProperty.cs
- IndexedEnumerable.cs
- ProviderConnectionPointCollection.cs
- MenuItemCollectionEditor.cs
- FilteredSchemaElementLookUpTable.cs
- XmlSchemaSimpleType.cs
- RadioButton.cs
- DataPointer.cs
- DataGridPagerStyle.cs
- XPathCompileException.cs
- NativeActivityContext.cs
- DataServiceHostFactory.cs
- InlineObject.cs
- TextChangedEventArgs.cs
- FileRecordSequenceHelper.cs
- ExpressionStringBuilder.cs
- PlacementWorkspace.cs
- ToolboxDataAttribute.cs
- XmlSchemaType.cs
- SchemaLookupTable.cs
- WindowsListViewItem.cs
- DescendantQuery.cs
- MenuStrip.cs
- Solver.cs
- XmlNodeList.cs
- ContentPresenter.cs
- Imaging.cs
- OdbcConnectionFactory.cs
- FontUnitConverter.cs
- ContentOperations.cs
- OAVariantLib.cs
- XmlDocumentViewSchema.cs