RichTextBox.CanPaste(DataFormats+Format) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет, можно ли вставить сведения из буфера обмена в указанном формате данных.
public:
bool CanPaste(System::Windows::Forms::DataFormats::Format ^ clipFormat);
public bool CanPaste (System.Windows.Forms.DataFormats.Format clipFormat);
member this.CanPaste : System.Windows.Forms.DataFormats.Format -> bool
Public Function CanPaste (clipFormat As DataFormats.Format) As Boolean
Параметры
- clipFormat
- DataFormats.Format
Одно из значений перечисления DataFormats.Format.
Возвращаемое значение
Значение true
, если данные из буфера обмена в указанном формате вставить можно; в противном случае — false
.
Примеры
В следующем примере кода показано, как использовать Paste метод для вставки растрового изображения в RichTextBox элемент управления . После открытия растрового изображения из файла в примере используется SetDataObject метод для копирования растрового рисунка в буфер обмена Windows. Наконец, в примере извлекается формат для Bitmap объекта , используется CanPaste метод для проверки возможности вставки формата в RichTextBox элемент управления, а затем используется Paste метод для вставки данных.
private:
bool pasteMyBitmap( String^ fileName )
{
// Open an bitmap from file and copy it to the clipboard.
Bitmap^ myBitmap = gcnew Bitmap( fileName );
// Copy the bitmap to the clipboard.
Clipboard::SetDataObject( myBitmap );
// Get the format for the object type.
DataFormats::Format^ myFormat = DataFormats::GetFormat( DataFormats::Bitmap );
// After verifying that the data can be pasted, paste it.
if ( richTextBox1->CanPaste( myFormat ) )
{
richTextBox1->Paste( myFormat );
return true;
}
else
{
MessageBox::Show( "The data format that you attempted to paste is not supported by this control." );
return false;
}
}
private bool pasteMyBitmap(string fileName)
{
// Open an bitmap from file and copy it to the clipboard.
Bitmap myBitmap = new Bitmap(fileName);
// Copy the bitmap to the clipboard.
Clipboard.SetDataObject(myBitmap);
// Get the format for the object type.
DataFormats.Format myFormat = DataFormats.GetFormat(DataFormats.Bitmap);
// After verifying that the data can be pasted, paste it.
if(richTextBox1.CanPaste(myFormat))
{
richTextBox1.Paste(myFormat);
return true;
}
else
{
MessageBox.Show("The data format that you attempted to paste is not supported by this control.");
return false;
}
}
Private Function PasteMyBitmap(ByVal Filename As String) As Boolean
'Open an bitmap from file and copy it to the clipboard.
Dim MyBitmap As Bitmap
MyBitmap = Bitmap.FromFile(Filename)
' Copy the bitmap to the clipboard.
Clipboard.SetDataObject(MyBitmap)
' Get the format for the object type.
Dim MyFormat As DataFormats.Format = DataFormats.GetFormat(DataFormats.Bitmap)
' After verifying that the data can be pasted, paste it.
If RichTextBox1.CanPaste(MyFormat) Then
RichTextBox1.Paste(MyFormat)
PasteMyBitmap = True
Else
MessageBox.Show("The data format that you attempted to paste is not supported by this control.")
PasteMyBitmap = False
End If
End Function
Комментарии
Этот метод можно использовать, чтобы определить, находится ли текущее содержимое буфера обмена в указанном формате данных буфера обмена, прежде чем разрешить пользователю вставлять сведения в RichTextBox элемент управления . Например, можно создать обработчик событий для Popup события команды MenuItem вставки и использовать этот метод, чтобы определить, следует ли включить вставку MenuItem на основе типа данных в буфере обмена.