DataObject.GetData Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает данные, связанные с заданным форматом.
Перегрузки
GetData(String, Boolean) |
Возвращает данные, связанные с указанным форматом, используя параметр автоматического преобразования, чтобы определить необходимость преобразования данных в этот формат. |
GetData(String) |
Возвращает данные, связанные с заданным форматом. |
GetData(Type) |
Возвращает данные, связанные с заданным форматом типа класса. |
GetData(String, Boolean)
Возвращает данные, связанные с указанным форматом, используя параметр автоматического преобразования, чтобы определить необходимость преобразования данных в этот формат.
public:
virtual System::Object ^ GetData(System::String ^ format, bool autoConvert);
public virtual object GetData (string format, bool autoConvert);
public virtual object? GetData (string format, bool autoConvert);
abstract member GetData : string * bool -> obj
override this.GetData : string * bool -> obj
Public Overridable Function GetData (format As String, autoConvert As Boolean) As Object
Параметры
- format
- String
Формат извлекаемых данных. Сведения о предварительно определенных форматах см. в разделе DataFormats.
- autoConvert
- Boolean
Значение true
, если данные необходимо преобразовать в указанный формат, и значение false
в противном случае.
Возвращаемое значение
Данные, связанные с заданным форматом, или значение null
.
Реализации
Примеры
В следующем примере кода извлекаются данные, хранящиеся в DataObject, с помощью autoConvert
параметра , чтобы указать, следует ли преобразовать формат данных.
Сначала создается новый DataObject объект с текстовыми данными. Затем пример пытается получить данные, указав их формат в виде строки и без преобразования формата, то есть autoConvert
параметр имеет значение false
. Эта операция завершается сбоем из-за отсутствия строковых данных в DataObject.
Далее в примере предпринимается попытка повторного получения данных с параметром autoConvert
, равным true
. Эта операция завершается успешно, и результаты отображаются в MessageBox.
Для этого кода требуется, чтобы textBox1
он был создан.
private:
void GetMyData3()
{
// Creates a new data object using a string and the text format.
String^ myString = "My new text string";
DataObject^ myDataObject = gcnew DataObject( DataFormats::Text,myString );
// Prints the string in a text box with autoconvert = false.
if ( myDataObject->GetData( "System.String", false ) != 0 )
{
// Prints the string in a text box.
textBox1->Text = String::Concat(
myDataObject->GetData( "System.String", false )->ToString(), "\n" );
}
else
{
textBox1->Text = "Could not find data of the specified format\n";
}
// Prints the string in a text box with autoconvert = true.
textBox1->Text = String::Concat(
textBox1->Text, myDataObject->GetData( "System.String", true )->ToString() );
}
private void GetMyData3() {
// Creates a new data object using a string and the text format.
string myString = "My new text string";
DataObject myDataObject = new DataObject(DataFormats.Text, myString);
// Prints the string in a text box with autoconvert = false.
if(myDataObject.GetData("System.String", false) != null) {
// Prints the string in a text box.
textBox1.Text = myDataObject.GetData("System.String", false).ToString() + '\n';
} else
{
textBox1.Text = "Could not find data of the specified format" + '\n';
}
// Prints the string in a text box with autoconvert = true.
textBox1.Text += myDataObject.GetData("System.String", true).ToString();
}
Private Sub GetMyData3()
' Creates a new data object using a string and the text format.
Dim myString As String = "My new text string"
Dim myDataObject As New DataObject(DataFormats.Text, myString)
' Prints the string in a text box with autoconvert = false.
If (myDataObject.GetData("System.String", False) IsNot Nothing) Then
' Prints the string in a text box.
textBox1.Text = myDataObject.GetData("System.String", False).ToString() & ControlChars.Cr
Else
textBox1.Text = "Could not find data of the specified format" & ControlChars.Cr
End If
' Prints the string in a text box with autoconvert = true.
textBox1.Text += myDataObject.GetData("System.String", True).ToString()
End Sub
Комментарии
autoConvert
Если параметр имеет значение true
и этот метод не может найти данные в указанном формате, он пытается преобразовать данные в формат . Если данные не могут быть преобразованы в указанный формат или данные были сохранены с автоматическим преобразованием false
, то этот метод возвращает null
значение .
autoConvert
Если параметр имеет значение false
, этот метод возвращает данные в указанном формате или null
если данные в этом формате не найдены.
Чтобы определить, связаны ли данные с форматом или могут ли быть преобразованы в формат , вызовите GetDataPresent перед вызовом GetData. Вызовите GetFormats список допустимых форматов для данных, хранящихся в этом DataObjectобъекте .
Примечание
Данные можно преобразовать в другой формат, если они были сохранены, указывая, что преобразование разрешено, и если запрошенный формат совместим с хранимым форматом. Например, данные, хранящиеся в Юникоде, можно преобразовать в текст.
Если format
имеет значение Html, этот метод возвращает строку в кодировке UTF-8 в приложениях, предназначенных для .NET 4.5 или более поздней версии, и строку в кодировке ANSI в приложениях, предназначенных для .NET 4.0 или более ранней версии.
См. также раздел
Применяется к
GetData(String)
Возвращает данные, связанные с заданным форматом.
public:
virtual System::Object ^ GetData(System::String ^ format);
public virtual object GetData (string format);
public virtual object? GetData (string format);
abstract member GetData : string -> obj
override this.GetData : string -> obj
Public Overridable Function GetData (format As String) As Object
Параметры
- format
- String
Формат извлекаемых данных. Сведения о предварительно определенных форматах см. в разделе DataFormats.
Возвращаемое значение
Данные, связанные с заданным форматом, или значение null
.
Реализации
Примеры
В следующем примере кода извлекаются данные, хранящиеся в DataObject. Сначала создается новый DataObject объект с текстовыми данными. Затем данные извлекаются с указанием их формата в виде строки и отображаются в текстовом поле.
Для этого кода требуется, чтобы textBox1
он был создан.
private:
void AddMyData3()
{
// Creates a component to store in the data object.
Component^ myComponent = gcnew Component;
// Creates a new data object.
DataObject^ myDataObject = gcnew DataObject;
// Adds the component to the DataObject.
myDataObject->SetData( myComponent );
// Prints whether data of the specified type is in the DataObject.
Type^ myType = myComponent->GetType();
if ( myDataObject->GetDataPresent( myType ) )
{
textBox1->Text = String::Concat( "Data of type ", myType,
" is present in the DataObject" );
}
else
{
textBox1->Text = String::Concat( "Data of type ", myType,
" is not present in the DataObject" );
}
}
private void AddMyData3() {
// Creates a component to store in the data object.
Component myComponent = new Component();
// Creates a new data object.
DataObject myDataObject = new DataObject();
// Adds the component to the DataObject.
myDataObject.SetData(myComponent);
// Prints whether data of the specified type is in the DataObject.
Type myType = myComponent.GetType();
if(myDataObject.GetDataPresent(myType))
textBox1.Text = "Data of type " + myType.ToString() +
" is present in the DataObject";
else
textBox1.Text = "Data of type " + myType.ToString() +
" is not present in the DataObject";
}
Private Sub AddMyData3()
' Creates a component to store in the data object.
Dim myComponent As New Component()
' Creates a new data object.
Dim myDataObject As New DataObject()
' Adds the component to the DataObject.
myDataObject.SetData(myComponent)
' Prints whether data of the specified type is in the DataObject.
Dim myType As Type = myComponent.GetType()
If myDataObject.GetDataPresent(myType) Then
textBox1.Text = "Data of type " & myType.ToString() & _
" is present in the DataObject"
Else
textBox1.Text = "Data of type " & myType.ToString() & _
" is not present in the DataObject"
End If
End Sub
Комментарии
Если этому методу не удается найти данные в указанном формате, он пытается преобразовать данные в формат . Если данные не могут быть преобразованы в указанный формат или данные были сохранены с автоматическим преобразованием false
, этот метод возвращает null
значение .
Чтобы определить, связаны ли данные с форматом или могут ли быть преобразованы в формат , вызовите GetDataPresent перед вызовом GetData. Вызовите GetFormats список допустимых форматов для данных, хранящихся в этом DataObjectобъекте .
Примечание
Данные можно преобразовать в другой формат, если они были сохранены, указывая, что преобразование разрешено, и если запрошенный формат совместим с хранимым форматом. Например, данные, хранящиеся в Юникоде, можно преобразовать в текст.
Если format
имеет значение Html, этот метод возвращает строку в кодировке UTF-8 в приложениях, предназначенных для .NET 4.5 или более поздней версии, и строку в кодировке ANSI в приложениях, предназначенных для .NET 4.0 или более ранней версии.
См. также раздел
Применяется к
GetData(Type)
Возвращает данные, связанные с заданным форматом типа класса.
public:
virtual System::Object ^ GetData(Type ^ format);
public virtual object GetData (Type format);
public virtual object? GetData (Type format);
abstract member GetData : Type -> obj
override this.GetData : Type -> obj
Public Overridable Function GetData (format As Type) As Object
Параметры
Возвращаемое значение
Данные, связанные с заданным форматом, или значение null
.
Реализации
Примеры
В следующем примере кода извлекаются данные, хранящиеся в DataObject. Сначала создается новый DataObject объект с компонентом . Затем извлекаются данные с указанием их типа. Тип полученных данных отображается в текстовом поле.
Для этого кода требуется, чтобы textBox1
он был создан.
private:
void GetMyData()
{
// 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();
// Retrieves the data using myType to represent its type.
Object^ myObject = myDataObject->GetData( myType );
if ( myObject != nullptr )
{
textBox1->Text = String::Format( "The data type stored in the DataObject is: {0}",
myObject->GetType()->Name );
}
else
{
textBox1->Text = "Data of the specified type was not stored in the DataObject.";
}
}
private void GetMyData() {
// 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();
// Retrieves the data using myType to represent its type.
Object myObject = myDataObject.GetData(myType);
if(myObject != null)
textBox1.Text = "The data type stored in the DataObject is: " +
myObject.GetType().Name;
else
textBox1.Text = "Data of the specified type was not stored " +
"in the DataObject.";
}
Private Sub GetMyData()
' Creates a component to store in the data object.
Dim myComponent As New 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()
' Retrieves the data using myType to represent its type.
Dim myObject As Object = myDataObject.GetData(myType)
If (myObject IsNot Nothing) Then
textBox1.Text = "The data type stored in the DataObject is: " & myObject.GetType().Name
Else
textBox1.Text = "Data of the specified type was not stored " & "in the DataObject."
End If
End Sub
Комментарии
Если этому методу не удается найти данные в указанном формате, он пытается преобразовать данные в формат . Если данные не могут быть преобразованы в указанный формат или данные были сохранены с автоматическим преобразованием false
, этот метод возвращает null
значение .
Чтобы определить, связаны ли данные с форматом или могут ли быть преобразованы в формат , вызовите GetDataPresent перед вызовом GetData. Вызовите GetFormats список допустимых форматов для данных, хранящихся в этом DataObjectобъекте .
Примечание
Данные можно преобразовать в другой формат, если они были сохранены, указывая, что преобразование разрешено, и если запрошенный формат совместим с хранимым форматом. Например, данные, хранящиеся в Юникоде, можно преобразовать в текст.