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
- BaseTemplateBuildProvider.cs
- MsmqBindingBase.cs
- OperationAbortedException.cs
- UmAlQuraCalendar.cs
- OracleString.cs
- WebBrowserProgressChangedEventHandler.cs
- ComponentResourceKey.cs
- SecurityUtils.cs
- CodeParameterDeclarationExpression.cs
- ZeroOpNode.cs
- BitArray.cs
- DataControlCommands.cs
- LinqDataSourceInsertEventArgs.cs
- CodeTypeParameter.cs
- Msec.cs
- GcHandle.cs
- EntityClientCacheKey.cs
- DetailsViewDeleteEventArgs.cs
- PeerCustomResolverSettings.cs
- TabOrder.cs
- IFlowDocumentViewer.cs
- HiddenFieldPageStatePersister.cs
- Pair.cs
- SymmetricKeyWrap.cs
- InputScope.cs
- PolygonHotSpot.cs
- Int32AnimationUsingKeyFrames.cs
- EnumBuilder.cs
- WindowManager.cs
- NativeMethods.cs
- ErasingStroke.cs
- AuthorizationPolicyTypeElement.cs
- Matrix3DStack.cs
- ProtocolsConfigurationEntry.cs
- DetailsViewDeletedEventArgs.cs
- CorrelationHandle.cs
- StorageMappingFragment.cs
- DescendantOverDescendantQuery.cs
- NativeMethods.cs
- DBConnection.cs
- XmlException.cs
- SessionPageStateSection.cs
- Button.cs
- SvcMapFileLoader.cs
- Byte.cs
- StructuredProperty.cs
- QilXmlReader.cs
- SQLChars.cs
- XslAst.cs
- MenuStrip.cs
- TableHeaderCell.cs
- MergeFilterQuery.cs
- AutoResetEvent.cs
- FastEncoderWindow.cs
- XmlRawWriter.cs
- MessageQueueConverter.cs
- SplashScreenNativeMethods.cs
- ServiceBehaviorElementCollection.cs
- StrongTypingException.cs
- unitconverter.cs
- RbTree.cs
- WebSysDefaultValueAttribute.cs
- DrawingImage.cs
- OdbcCommandBuilder.cs
- FixedSOMPage.cs
- ExtensionSurface.cs
- CollectionContainer.cs
- LinearQuaternionKeyFrame.cs
- CreateParams.cs
- ParallelLoopState.cs
- LowerCaseStringConverter.cs
- Vector3DCollectionConverter.cs
- MetadataPropertyAttribute.cs
- CodeTypeReferenceCollection.cs
- EventBuilder.cs
- FixUp.cs
- regiisutil.cs
- TextLineBreak.cs
- ForeignConstraint.cs
- DbConnectionPoolOptions.cs
- XmlNodeChangedEventArgs.cs
- DBDataPermission.cs
- SQLInt64Storage.cs
- DynamicObject.cs
- WindowsListViewScroll.cs
- ByteAnimation.cs
- StandardToolWindows.cs
- ChineseLunisolarCalendar.cs
- Internal.cs
- ImageMap.cs
- DataBoundControlAdapter.cs
- SourceSwitch.cs
- SQLDecimal.cs
- DefaultSection.cs
- TableHeaderCell.cs
- SqlIdentifier.cs
- HashCodeCombiner.cs
- LowerCaseStringConverter.cs
- ProfileEventArgs.cs
- Size.cs