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
- EraserBehavior.cs
- LicenseManager.cs
- XmlSchema.cs
- XmlQueryType.cs
- AssemblyUtil.cs
- GridViewUpdatedEventArgs.cs
- FormattedText.cs
- IdnElement.cs
- DefaultProxySection.cs
- WindowsAltTab.cs
- ViewService.cs
- PropertyEmitter.cs
- PageStatePersister.cs
- ScalarConstant.cs
- OnOperation.cs
- DataTableNewRowEvent.cs
- FileEnumerator.cs
- OutKeywords.cs
- BinHexDecoder.cs
- NavigatingCancelEventArgs.cs
- Range.cs
- TextServicesContext.cs
- SqlCachedBuffer.cs
- ColumnCollection.cs
- WizardStepBase.cs
- TransformValueSerializer.cs
- _CommandStream.cs
- _ScatterGatherBuffers.cs
- ControlValuePropertyAttribute.cs
- BuilderPropertyEntry.cs
- PocoEntityKeyStrategy.cs
- ReliabilityContractAttribute.cs
- X509CertificateValidator.cs
- FixedSOMTextRun.cs
- TextTreeNode.cs
- CodeMemberMethod.cs
- OptimalBreakSession.cs
- GorillaCodec.cs
- Rotation3D.cs
- CommonGetThemePartSize.cs
- LineSegment.cs
- ComboBox.cs
- SafeNativeMethodsCLR.cs
- DocumentPaginator.cs
- DataTableNewRowEvent.cs
- EntityDataSourceMemberPath.cs
- DrawingContextDrawingContextWalker.cs
- BoundingRectTracker.cs
- XmlSerializerOperationFormatter.cs
- PtsHelper.cs
- CaseInsensitiveHashCodeProvider.cs
- LocalizationComments.cs
- HealthMonitoringSectionHelper.cs
- ProjectionPlan.cs
- HtmlAnchor.cs
- ReachSerializationUtils.cs
- MasterPageParser.cs
- RuleSettingsCollection.cs
- TempFiles.cs
- SocketException.cs
- LogArchiveSnapshot.cs
- Hex.cs
- RelationshipFixer.cs
- IResourceProvider.cs
- SpellerHighlightLayer.cs
- TextElementAutomationPeer.cs
- Win32.cs
- ListViewCancelEventArgs.cs
- ReliableMessagingHelpers.cs
- SessionEndingCancelEventArgs.cs
- _SslStream.cs
- AccessViolationException.cs
- WebPartCancelEventArgs.cs
- connectionpool.cs
- SessionEndingCancelEventArgs.cs
- connectionpool.cs
- DropSource.cs
- ResXBuildProvider.cs
- ViewStateChangedEventArgs.cs
- TemplatePagerField.cs
- WebPageTraceListener.cs
- FormsAuthenticationConfiguration.cs
- HMACSHA256.cs
- CompModSwitches.cs
- DoubleStorage.cs
- AssemblyFilter.cs
- DesignerPerfEventProvider.cs
- UnmanagedMemoryStreamWrapper.cs
- __Filters.cs
- EmptyStringExpandableObjectConverter.cs
- Set.cs
- ResourceDisplayNameAttribute.cs
- SystemInformation.cs
- LineProperties.cs
- WebPartUserCapability.cs
- ReadWriteControlDesigner.cs
- RefreshInfo.cs
- SymDocumentType.cs
- XmlEncodedRawTextWriter.cs
- _SingleItemRequestCache.cs