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
- RouteParameter.cs
- XmlSchemaException.cs
- BrowsableAttribute.cs
- EnumConverter.cs
- ConnectionPointGlyph.cs
- TextDecorationUnitValidation.cs
- ParameterBuilder.cs
- SettingsAttributes.cs
- StickyNoteContentControl.cs
- OdbcFactory.cs
- ArrayHelper.cs
- __Filters.cs
- SafeNativeMethods.cs
- RemoveFromCollection.cs
- XamlPathDataSerializer.cs
- Quack.cs
- MULTI_QI.cs
- QilTernary.cs
- BitConverter.cs
- DataGridColumnHeaderAutomationPeer.cs
- SqlDeflator.cs
- ObfuscationAttribute.cs
- GlyphRunDrawing.cs
- StrongName.cs
- brushes.cs
- SqlBooleanizer.cs
- SizeConverter.cs
- MetadataCacheItem.cs
- AssociatedControlConverter.cs
- PackagingUtilities.cs
- ClientRolePrincipal.cs
- EqualityArray.cs
- ObjectItemCollectionAssemblyCacheEntry.cs
- DataControlFieldHeaderCell.cs
- XPathScanner.cs
- DrawListViewItemEventArgs.cs
- CapabilitiesUse.cs
- ServiceCredentialsElement.cs
- ConnectionManagementSection.cs
- Drawing.cs
- PieceDirectory.cs
- XPathPatternParser.cs
- XmlEntity.cs
- QueryOperationResponseOfT.cs
- BindingExpression.cs
- BoolExpression.cs
- AuthenticationService.cs
- FileCodeGroup.cs
- FrugalMap.cs
- TableItemPattern.cs
- XmlBinaryReader.cs
- filewebresponse.cs
- UnionCodeGroup.cs
- KeyFrames.cs
- QualificationDataItem.cs
- TableColumn.cs
- UnsafeNativeMethods.cs
- XamlReader.cs
- X509AsymmetricSecurityKey.cs
- Bitmap.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- HitTestParameters.cs
- ParameterDataSourceExpression.cs
- CfgSemanticTag.cs
- PersonalizablePropertyEntry.cs
- AuthorizationSection.cs
- Section.cs
- Random.cs
- RenderDataDrawingContext.cs
- ButtonBaseAdapter.cs
- SHA256Managed.cs
- _LazyAsyncResult.cs
- ReflectionHelper.cs
- ObjectItemAssemblyLoader.cs
- DiscardableAttribute.cs
- SettingsPropertyWrongTypeException.cs
- RSAOAEPKeyExchangeFormatter.cs
- PageContentAsyncResult.cs
- X509RecipientCertificateServiceElement.cs
- PartitionedStream.cs
- ExpressionBuilder.cs
- EntityDescriptor.cs
- ProfileInfo.cs
- TextureBrush.cs
- AssemblyCollection.cs
- PropertyManager.cs
- ErrorTableItemStyle.cs
- KeyGesture.cs
- GridViewRowPresenterBase.cs
- ObjectCloneHelper.cs
- PlainXmlWriter.cs
- SystemPens.cs
- RadioButtonBaseAdapter.cs
- Knowncolors.cs
- GrammarBuilderBase.cs
- UnsignedPublishLicense.cs
- HotSpot.cs
- XmlCharCheckingReader.cs
- ManipulationDevice.cs
- AssemblySettingAttributes.cs