IDataObject.GetDataPresent Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет, связаны ли хранимые в данном экземпляре данные с указанным форматом.
Перегрузки
GetDataPresent(String) |
Определяет, связаны ли хранимые в данном экземпляре данные с указанным форматом или возможно ли их преобразование в этот формат. |
GetDataPresent(Type) |
Определяет, связаны ли хранимые в данном экземпляре данные с указанным форматом или возможно ли их преобразование в этот формат. |
GetDataPresent(String, Boolean) |
Определяет, связаны ли хранимые в данном экземпляре данные с указанным форматом, определяя с помощью значения типа Boolean, необходимо ли преобразовать данные в этот формат. |
GetDataPresent(String)
Определяет, связаны ли хранимые в данном экземпляре данные с указанным форматом или возможно ли их преобразование в этот формат.
public:
bool GetDataPresent(System::String ^ format);
public bool GetDataPresent (string format);
abstract member GetDataPresent : string -> bool
Public Function GetDataPresent (format As String) As Boolean
Параметры
- format
- String
Формат, для которого выполняется проверка. Сведения о предварительно определенных форматах см. в разделе DataFormats.
Возвращаемое значение
Значение true
, если хранящиеся в данном экземпляре данные связаны с указанным форматом или могут быть преобразованы в него. В противном случае — значение false
.
Примеры
В этом примере используется DataObject класс , который реализует IDataObject
, чтобы продемонстрировать использование GetDataPresent
метода . Во-первых, он создает объект данных, используя строку и Text
формат . Затем он проверяет наличие данных в Text
формате и отображает результаты в окне сообщения. В примере предполагается, что вы создали объект с Form именем Form1
.
private:
void TestDataObject()
{
// Creates a new data object using a string and the Text format.
String^ myString = "Hello World!";
DataObject^ myDataObject = gcnew DataObject( DataFormats::Text,myString );
// Checks whether the data is present in the Text format and displays the result.
if ( myDataObject->GetDataPresent( DataFormats::Text ) )
MessageBox::Show( "The stored data is in the Text format.", "Test Result" );
else
MessageBox::Show( "The stored data is not in the Text format.", "Test Result" );
}
private void TestDataObject()
{
// Creates a new data object using a string and the Text format.
string myString = "Hello World!";
DataObject myDataObject = new DataObject(DataFormats.Text, myString);
// Checks whether the data is present in the Text format and displays the result.
if (myDataObject.GetDataPresent(DataFormats.Text))
MessageBox.Show("The stored data is in the Text format." , "Test Result");
else
MessageBox.Show("The stored data is not in the Text format.", "Test Result");
}
Private Sub TestDataObject()
' Creates a new data object using a string and the Text format.
Dim myString As New String("Hello World!")
Dim myDataObject As New DataObject(DataFormats.Text, myString)
' Checks whether the data is present in the Text format and displays the result.
If (myDataObject.GetDataPresent(DataFormats.Text)) Then
MessageBox.Show("The stored data is in the Text format.", "Test Result")
Else
MessageBox.Show("The stored data is not in the Text format.", "Test Result")
End If
End Sub
Комментарии
Вызовите этот метод, чтобы определить, существует ли формат в этом DataObject объекте, перед вызовом GetDataметода . Вызовите GetFormats форматы, доступные в этом экземпляре.
Примечание
Данные можно преобразовать в другой формат, если они были сохранены, указывая, что преобразование разрешено, и если запрошенный формат совместим с хранимым форматом. Например, данные, хранящиеся в Юникоде, можно преобразовать в текст.
Реализацию этого метода см. в разделе DataObject.GetDataPresent.
См. также раздел
Применяется к
GetDataPresent(Type)
Определяет, связаны ли хранимые в данном экземпляре данные с указанным форматом или возможно ли их преобразование в этот формат.
public:
bool GetDataPresent(Type ^ format);
public bool GetDataPresent (Type format);
abstract member GetDataPresent : Type -> bool
Public Function GetDataPresent (format As Type) As Boolean
Параметры
- format
- Type
Тип Type, представляющий формат, для которого выполняется проверка. Сведения о предварительно определенных форматах см. в разделе DataFormats.
Возвращаемое значение
Значение true
, если хранящиеся в данном экземпляре данные связаны с указанным форматом или могут быть преобразованы в него. В противном случае — значение false
.
Примеры
В этом примере используется DataObject класс , который реализует IDataObject
, чтобы продемонстрировать использование GetDataPresent
метода . Во-первых, он создает компонент (myComponent
) и сохраняет его в объекте данных (myDataObject
). Затем он проверяет, хранятся ли указанные данные в myDataObject
. Если тест оценивает true
, результат отображается в окне сообщения, а тип данных отображается в текстовом поле. В этом примере предполагается, что вы уже создали Form именованные Form1
и TextBox .textBox1
private:
void GetDataPresent2()
{
// Creates a component to store in the data object.
Component^ myComponent = gcnew Component;
// Creates a new data object and assigns it the component.
DataObject^ myDataObject = gcnew DataObject( myComponent );
// Creates a type to store the type of data.
Type^ myType = myComponent->GetType();
// Checks whether the specified data type exists in the object.
if ( myDataObject->GetDataPresent( myType ) )
{
MessageBox::Show( "The specified data is stored in the data object." );
// Displays the type of data.
textBox1->Text = "The data type is " + myDataObject->GetData( myType )->GetType()->Name + ".";
}
else
MessageBox::Show( "The specified data is not stored in the data object." );
}
private void GetDataPresent2()
{
// Creates a component to store in the data object.
Component myComponent = new Component();
// Creates a new data object and assigns it the component.
DataObject myDataObject = new DataObject(myComponent);
// Creates a type to store the type of data.
Type myType = myComponent.GetType();
// Checks whether the specified data type exists in the object.
if (myDataObject.GetDataPresent(myType))
{
MessageBox.Show("The specified data is stored in the data object.");
// Displays the type of data.
textBox1.Text = "The data type is " + myDataObject.GetData(myType).GetType().Name + ".";
}
else
{
MessageBox.Show("The specified data is not stored in the data object.");
}
}
Private Sub GetDataPresent2()
' Creates a component to store in the data object.
Dim myComponent As New System.ComponentModel.Component()
' Creates a new data object and assigns it the component.
Dim myDataObject As New DataObject(myComponent)
'Creates a type to store the type of data.
Dim myType As Type = myComponent.GetType()
' Checks whether the specified data type exists in the object.
If myDataObject.GetDataPresent(myType) Then
MessageBox.Show("The specified data is stored in the data object.")
' Displays the type of data.
TextBox1.Text = "The data type is " & myDataObject.GetData(myType).GetType().Name & "."
Else
MessageBox.Show("The specified data is not stored in the data object.")
End If
End Sub
Комментарии
Вызовите этот метод, чтобы определить, существует ли формат в этом DataObject объекте, перед вызовом GetDataметода . Вызовите GetFormats форматы, доступные в этом экземпляре.
Примечание
Данные можно преобразовать в другой формат, если они были сохранены, указывая, что преобразование разрешено, и если запрошенный формат совместим с хранимым форматом. Например, данные, хранящиеся в Юникоде, можно преобразовать в текст.
Реализацию этого метода см. в разделе DataObject.GetDataPresent.
См. также раздел
Применяется к
GetDataPresent(String, Boolean)
Определяет, связаны ли хранимые в данном экземпляре данные с указанным форматом, определяя с помощью значения типа Boolean, необходимо ли преобразовать данные в этот формат.
public:
bool GetDataPresent(System::String ^ format, bool autoConvert);
public bool GetDataPresent (string format, bool autoConvert);
abstract member GetDataPresent : string * bool -> bool
Public Function GetDataPresent (format As String, autoConvert As Boolean) As Boolean
Параметры
- format
- String
Формат, для которого выполняется проверка. Сведения о предварительно определенных форматах см. в разделе DataFormats.
- autoConvert
- Boolean
Значение true
, если необходимо определить возможность преобразования данных, хранимых в данном экземпляре, в указанный формат, и значение false
, если необходимо проверить наличие данных в указанном формате.
Возвращаемое значение
Значение true
, если данные находятся в указанном формате или могут быть в него преобразованы; в противном случае — значение false
.
Примеры
В этом примере используется DataObject класс , который реализует IDataObject
, чтобы продемонстрировать использование GetDataPresent
метода . Во-первых, он создает объект данных (myDataObject
), используя строку и Text
формат . Затем он запрашивает у объекта данные, связанные с форматом Text
, с параметром autoConvert
, равным false
. Эта пробная версия завершается сбоем, и результат отображается в окне сообщения с меткой "Сообщение 1". Во второй пробной версии параметру autoConvert
присваивается значение true
. Пробная версия завершается успешно, и результат отображается в окне сообщения с меткой "Сообщение 2". В примере предполагается, что вы создали объект с Form именем Form1
.
private:
void GetDataPresent3()
{
// Creates a new data object using a string and the Text format.
DataObject^ myDataObject = gcnew DataObject( DataFormats::Text,"My String" );
// Checks whether the string can be displayed with autoConvert equal to false.
if ( myDataObject->GetDataPresent( "System::String", false ) )
MessageBox::Show( myDataObject->GetData( "System::String", false )->ToString(), "Message #1" );
else
MessageBox::Show( "Cannot convert data to the specified format with autoConvert set to false.", "Message #1" );
// Displays the string with autoConvert equal to true.
MessageBox::Show( "Now that autoConvert is true, you can convert " + myDataObject->GetData( "System::String", true ) + " to string format.", "Message #2" );
}
private void GetDataPresent3()
{
// Creates a new data object using a string and the Text format.
DataObject myDataObject = new DataObject(DataFormats.Text, "My String");
// Checks whether the string can be displayed with autoConvert equal to false.
if(myDataObject.GetDataPresent("System.String", false))
MessageBox.Show(myDataObject.GetData("System.String", false).ToString(), "Message #1");
else
MessageBox.Show("Cannot convert data to the specified format with autoConvert set to false.", "Message #1");
// Displays the string with autoConvert equal to true.
MessageBox.Show("Now that autoConvert is true, you can convert " +
myDataObject.GetData("System.String", true).ToString() + " to string format.","Message #2");
}
Private Sub GetDataPresent3()
' Creates a new data object using a string and the Text format.
Dim myDataObject As New DataObject(DataFormats.Text, "My String")
' Checks whether the string can be displayed with autoConvert equal to false.
If myDataObject.GetDataPresent("System.String", False) Then
MessageBox.Show(myDataObject.GetData("System.String", False).ToString() + ".", "Message #1")
Else
MessageBox.Show("Cannot convert data to the specified format with autoConvert set to false.", "Message #1")
End If
' Displays the string with autoConvert equal to true.
MessageBox.Show(("Now that autoConvert is true, you can convert " + myDataObject.GetData("System.String", _
True).ToString() + " to string format."), "Message #2")
End Sub
Комментарии
Вызовите этот метод, чтобы определить, существует ли формат в этом DataObject объекте, перед вызовом GetDataметода . Вызовите GetFormats форматы, доступные в этом экземпляре.
Этот метод возвращает, true
если:
Параметр
autoConvert
имеет значение ,true
а данные — в формате, который можно преобразовать в соответствующий формат.Параметр
autoConvert
имеет значение ,false
а данные — в соответствующем формате.
Этот метод возвращает, false
если:
Параметр
autoConvert
имеет значение ,true
и этот метод не может найти данные в указанном формате, и он не может преобразовать данные в указанный формат, или данные были сохранены с заданнымautoConvert
значениемfalse
.Параметр
autoConvert
имеет значениеfalse
, и данные в этом экземпляре не существуют в указанном формате.
Примечание
Данные можно преобразовать в другой формат, если они были сохранены, указывая, что преобразование разрешено, и если запрошенный формат совместим с хранимым форматом. Например, данные, хранящиеся в Юникоде, можно преобразовать в текст.
Реализацию этого метода см. в разделе DataObject.GetDataPresent.