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
- HasCopySemanticsAttribute.cs
- BulletedList.cs
- ToolStripSystemRenderer.cs
- QilPatternVisitor.cs
- TextParaLineResult.cs
- EdgeProfileValidation.cs
- DateTimeConverter.cs
- StandardOleMarshalObject.cs
- WebPartsSection.cs
- WebPartMenuStyle.cs
- ProjectionCamera.cs
- PeerPresenceInfo.cs
- SafeRightsManagementPubHandle.cs
- HttpValueCollection.cs
- WorkflowInstanceExtensionProvider.cs
- OleDbCommand.cs
- InArgument.cs
- AssertHelper.cs
- XamlWrapperReaders.cs
- ComplexLine.cs
- ConfigurationFileMap.cs
- UnaryNode.cs
- WsdlEndpointConversionContext.cs
- AdapterDictionary.cs
- MenuCommand.cs
- TaskFileService.cs
- TransformerConfigurationWizardBase.cs
- _StreamFramer.cs
- VisualBrush.cs
- DynamicActionMessageFilter.cs
- HttpWriter.cs
- WorkflowDebuggerSteppingAttribute.cs
- VarRemapper.cs
- DoubleAnimation.cs
- MultiTrigger.cs
- AspCompat.cs
- PersonalizationProvider.cs
- AmbientLight.cs
- MutexSecurity.cs
- PageEventArgs.cs
- DynamicUpdateCommand.cs
- EmptyEnumerable.cs
- BitmapImage.cs
- HtmlAnchor.cs
- ObjectAnimationBase.cs
- SessionEndingEventArgs.cs
- Brushes.cs
- Int32Converter.cs
- UniformGrid.cs
- PrintingPermission.cs
- DesignerForm.cs
- DocumentSchemaValidator.cs
- Grid.cs
- TabItemWrapperAutomationPeer.cs
- PrintDialogException.cs
- SchemaImporterExtension.cs
- ComboBox.cs
- UITypeEditor.cs
- StrongNameMembershipCondition.cs
- UnsafeNativeMethods.cs
- DEREncoding.cs
- XPathArrayIterator.cs
- ThemeableAttribute.cs
- FileDetails.cs
- XmlStreamNodeWriter.cs
- DataGridViewRowPostPaintEventArgs.cs
- CopyNamespacesAction.cs
- RootBrowserWindowProxy.cs
- ConfigurationValidatorBase.cs
- SqlUDTStorage.cs
- TriggerAction.cs
- RunClient.cs
- counter.cs
- ObjectSpanRewriter.cs
- AnnotationObservableCollection.cs
- UserMapPath.cs
- XmlHierarchyData.cs
- ParseNumbers.cs
- SessionPageStatePersister.cs
- FixedSOMElement.cs
- ListViewItem.cs
- DataRowView.cs
- RuleEngine.cs
- ImageListUtils.cs
- ObjRef.cs
- ComPersistableTypeElementCollection.cs
- HttpDebugHandler.cs
- Part.cs
- PackagePart.cs
- EventArgs.cs
- BufferModeSettings.cs
- SqlParameter.cs
- SmtpFailedRecipientException.cs
- XsdDuration.cs
- EntityDataSourceChangedEventArgs.cs
- SwitchAttribute.cs
- MD5.cs
- DrawListViewSubItemEventArgs.cs
- AsyncPostBackTrigger.cs
- LayoutEngine.cs