Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Framework / MS / Internal / Ink / TextClipboardData.cs / 1 / TextClipboardData.cs
//---------------------------------------------------------------------------- // // File: TextClipboardData.cs // // Description: // A base class which can copy a unicode text to the IDataObject. // It also can get the unicode text from the IDataObject and create a corresponding textbox. // // Features: // // History: // 11/17/2004 waynezen: Created // // Copyright (C) 2001 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.Windows; using System.Windows.Controls; using System.Windows.Markup; using System.Text; namespace MS.Internal.Ink { internal class TextClipboardData : ElementsClipboardData { //------------------------------------------------------------------------------- // // Constructors // //------------------------------------------------------------------------------- #region Constructors // The default constructor internal TextClipboardData() : this(null) {} // The constructor with a string as argument internal TextClipboardData(string text) { _text = text; } #endregion Constructors // Checks if the data can be pasted. internal override bool CanPaste(IDataObject dataObject) { return ( dataObject.GetDataPresent(DataFormats.UnicodeText, false) || dataObject.GetDataPresent(DataFormats.Text, false) || dataObject.GetDataPresent(DataFormats.OemText, false) ); } //-------------------------------------------------------------------------------- // // Protected Methods // //------------------------------------------------------------------------------- #region Protected Methods // Checks if the data can be copied. protected override bool CanCopy() { return !string.IsNullOrEmpty(_text); } // Copy the text to the IDataObject protected override void DoCopy(IDataObject dataObject) { // Put the text to the clipboard dataObject.SetData(DataFormats.UnicodeText, _text, true); } // Retrieves the text from the IDataObject instance. // Then create a textbox with the text data. protected override void DoPaste(IDataObject dataObject) { ElementList = new List(); // Get the string from the data object. string text = dataObject.GetData(DataFormats.UnicodeText, true) as string; if ( String.IsNullOrEmpty(text) ) { // OemText can be retrieved as CF_TEXT. text = dataObject.GetData(DataFormats.Text, true) as string; } if ( !String.IsNullOrEmpty(text) ) { // Now, create a text box and set the text to it. TextBox textBox = new TextBox(); textBox.Text = text; textBox.TextWrapping = TextWrapping.Wrap; // Add the textbox to the internal array list. ElementList.Add(textBox); } } #endregion Protected Methods //-------------------------------------------------------------------------------- // // Private Fields // //-------------------------------------------------------------------------------- #region Private Fields private string _text; #endregion Private Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // File: TextClipboardData.cs // // Description: // A base class which can copy a unicode text to the IDataObject. // It also can get the unicode text from the IDataObject and create a corresponding textbox. // // Features: // // History: // 11/17/2004 waynezen: Created // // Copyright (C) 2001 by Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.Windows; using System.Windows.Controls; using System.Windows.Markup; using System.Text; namespace MS.Internal.Ink { internal class TextClipboardData : ElementsClipboardData { //------------------------------------------------------------------------------- // // Constructors // //------------------------------------------------------------------------------- #region Constructors // The default constructor internal TextClipboardData() : this(null) {} // The constructor with a string as argument internal TextClipboardData(string text) { _text = text; } #endregion Constructors // Checks if the data can be pasted. internal override bool CanPaste(IDataObject dataObject) { return ( dataObject.GetDataPresent(DataFormats.UnicodeText, false) || dataObject.GetDataPresent(DataFormats.Text, false) || dataObject.GetDataPresent(DataFormats.OemText, false) ); } //-------------------------------------------------------------------------------- // // Protected Methods // //------------------------------------------------------------------------------- #region Protected Methods // Checks if the data can be copied. protected override bool CanCopy() { return !string.IsNullOrEmpty(_text); } // Copy the text to the IDataObject protected override void DoCopy(IDataObject dataObject) { // Put the text to the clipboard dataObject.SetData(DataFormats.UnicodeText, _text, true); } // Retrieves the text from the IDataObject instance. // Then create a textbox with the text data. protected override void DoPaste(IDataObject dataObject) { ElementList = new List (); // Get the string from the data object. string text = dataObject.GetData(DataFormats.UnicodeText, true) as string; if ( String.IsNullOrEmpty(text) ) { // OemText can be retrieved as CF_TEXT. text = dataObject.GetData(DataFormats.Text, true) as string; } if ( !String.IsNullOrEmpty(text) ) { // Now, create a text box and set the text to it. TextBox textBox = new TextBox(); textBox.Text = text; textBox.TextWrapping = TextWrapping.Wrap; // Add the textbox to the internal array list. ElementList.Add(textBox); } } #endregion Protected Methods //-------------------------------------------------------------------------------- // // Private Fields // //-------------------------------------------------------------------------------- #region Private Fields private string _text; #endregion Private Fields } } // 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
- MethodExpr.cs
- MatrixTransform.cs
- FrameAutomationPeer.cs
- BamlLocalizableResource.cs
- LocalizableAttribute.cs
- CertificateManager.cs
- CalendarDesigner.cs
- SqlXmlStorage.cs
- ObjectDataSourceView.cs
- BuildManagerHost.cs
- PasswordDeriveBytes.cs
- MD5HashHelper.cs
- OdbcParameterCollection.cs
- PublisherIdentityPermission.cs
- Compiler.cs
- HttpModule.cs
- SqlGatherProducedAliases.cs
- MessageQueueException.cs
- HttpListenerPrefixCollection.cs
- DateTimeFormatInfoScanner.cs
- HtmlControlAdapter.cs
- SoapIgnoreAttribute.cs
- WebZoneDesigner.cs
- FormatConvertedBitmap.cs
- CssStyleCollection.cs
- DataTableTypeConverter.cs
- GridPatternIdentifiers.cs
- HttpCachePolicyElement.cs
- DoubleAverageAggregationOperator.cs
- VisualBasicSettingsConverter.cs
- WmpBitmapEncoder.cs
- SingleStorage.cs
- CreateUserWizardDesigner.cs
- MimeWriter.cs
- HuffModule.cs
- ProcessThread.cs
- TimeSpanStorage.cs
- TransactionOptions.cs
- UIntPtr.cs
- ValidatingPropertiesEventArgs.cs
- ModulesEntry.cs
- SelectingProviderEventArgs.cs
- RemotingSurrogateSelector.cs
- VisualTransition.cs
- ImageFormat.cs
- CqlBlock.cs
- ArrayWithOffset.cs
- RegexGroupCollection.cs
- PartialTrustHelpers.cs
- InstanceOwner.cs
- ProtocolElementCollection.cs
- ArrayTypeMismatchException.cs
- PenThreadWorker.cs
- PerformanceCounterPermission.cs
- BaseTransportHeaders.cs
- ParserExtension.cs
- OletxCommittableTransaction.cs
- OleDbEnumerator.cs
- NativeCompoundFileAPIs.cs
- DtrList.cs
- XmlDataLoader.cs
- FormatterServices.cs
- IISUnsafeMethods.cs
- _SingleItemRequestCache.cs
- RegisteredDisposeScript.cs
- XsltLoader.cs
- HtmlForm.cs
- BitmapEffectGroup.cs
- IDReferencePropertyAttribute.cs
- ContentOnlyMessage.cs
- LinkDescriptor.cs
- FindCriteria.cs
- MenuCommands.cs
- ReadWriteSpinLock.cs
- DesignerView.cs
- DataGridViewComboBoxCell.cs
- Panel.cs
- RequestCacheManager.cs
- SizeAnimationUsingKeyFrames.cs
- ListViewPagedDataSource.cs
- Cursor.cs
- TemplateInstanceAttribute.cs
- XAMLParseException.cs
- ClassDataContract.cs
- VectorCollection.cs
- DataStreams.cs
- CLRBindingWorker.cs
- XmlSchemaSearchPattern.cs
- HitTestWithPointDrawingContextWalker.cs
- InlineCategoriesDocument.cs
- HtmlElementErrorEventArgs.cs
- Variant.cs
- OracleConnectionStringBuilder.cs
- DependencyProperty.cs
- BindingManagerDataErrorEventArgs.cs
- RuntimeResourceSet.cs
- AssemblyAttributesGoHere.cs
- NotifyInputEventArgs.cs
- Literal.cs
- DetailsViewPagerRow.cs