IDataObject.SetData Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Сохраняет указанные данные и связанный с ними формат в этом экземпляре.
Перегрузки
SetData(Object) |
Сохраняет указанные данные в этом экземпляре, используя класс данных для формата. |
SetData(String, Object) |
Сохраняет указанные данные и связанный с ними формат в этом экземпляре. |
SetData(Type, Object) |
Сохраняет указанные данные и связанный с ними тип класса в этом экземпляре. |
SetData(String, Boolean, Object) |
Сохраняет указанные данные и связанный с ними формат в этом экземпляре и в значении типа Boolean задает, возможно ли преобразование данных в другой формат. |
SetData(Object)
Сохраняет указанные данные в этом экземпляре, используя класс данных для формата.
public:
void SetData(System::Object ^ data);
public void SetData (object data);
public void SetData (object? data);
abstract member SetData : obj -> unit
Public Sub SetData (data As Object)
Параметры
- data
- Object
Сохраняемые данные.
Примеры
В этом примере используется DataObject класс , который реализует IDataObject
, чтобы продемонстрировать использование SetData
метода . Сначала он создает компонент (myComponent
) и сохраняет его в объекте данных (myDataObject
). Затем он проверяет, хранятся ли указанные данные в объекте данных, и отображает результат в окне сообщения. В примере предполагается, что вы создали объект с Form именем Form1
.
private:
void SetData1()
{
// Creates a component to store in the data object.
Component^ myComponent = gcnew Component;
// Creates a data object.
DataObject^ myDataObject = gcnew DataObject;
// Adds the component to the data object.
myDataObject->SetData( myComponent );
// Checks whether data of the specified type is in the data object.
Type^ myType = myComponent->GetType();
String^ myMessageText;
if ( myDataObject->GetDataPresent( myType ) )
{
myMessageText = "Data of type " + myType->Name +
" is present in the data object";
}
else
{
myMessageText = "Data of type " + myType->Name +
" is not present in the data object";
}
// Displays the result in a message box.
MessageBox::Show( myMessageText, "The Test Result" );
}
private void SetData1()
{
// Creates a component to store in the data object.
Component myComponent = new Component();
// Creates a data object.
DataObject myDataObject = new DataObject();
// Adds the component to the data object.
myDataObject.SetData(myComponent);
// Checks whether data of the specified type is in the data object.
Type myType = myComponent.GetType();
string myMessageText;
if(myDataObject.GetDataPresent(myType))
myMessageText = "Data of type " + myType.Name +
" is present in the data object";
else
myMessageText = "Data of type " + myType.Name +
" is not present in the data object";
// Displays the result in a message box.
MessageBox.Show(myMessageText, "The Test Result");
}
Private Sub SetData1()
' Creates a component to store in the data object.
Dim myComponent As New System.ComponentModel.Component()
' Creates a data object.
Dim myDataObject As New DataObject()
' Adds the component to the data object.
myDataObject.SetData(myComponent)
' Checks whether data of the specified type is in the data object.
Dim myType As Type = myComponent.GetType()
Dim myMessageText As String
If myDataObject.GetDataPresent(myType) Then
myMessageText = "Data of type " + myType.Name + " is present in the data object"
Else
myMessageText = "Data of type " + myType.Name + " is not present in the data object"
End If
' Displays the result in a message box.
MessageBox.Show(myMessageText, "The Test Result")
End Sub
Комментарии
Формат является производным от класса данных.
Данные, хранящиеся с помощью этого метода, можно преобразовать в совместимый формат при извлечении.
Реализацию этого метода см. в разделе DataObject.SetData.
См. также раздел
Применяется к
SetData(String, Object)
Сохраняет указанные данные и связанный с ними формат в этом экземпляре.
public:
void SetData(System::String ^ format, System::Object ^ data);
public void SetData (string format, object data);
public void SetData (string format, object? data);
abstract member SetData : string * obj -> unit
Public Sub SetData (format As String, data As Object)
Параметры
- format
- String
Формат, связанный с данными. Сведения о предварительно определенных форматах см. в разделе DataFormats.
- data
- Object
Сохраняемые данные.
Примеры
В этом примере используется DataObject класс , который реализует IDataObject
, чтобы продемонстрировать использование SetData
метода . Во-первых, он создает объект данных (myDataObject
) и сохраняет строку в объекте, указывая UnicodeText
формат . Затем он извлекает данные, хранящиеся в объекте Text
, который задает формат, чтобы данные преобразовылись в Text
формат . Результат отображается в окне сообщения. В этом примере предполагается, что вы создали объект с Form именем Form1
.
private:
void SetData2()
{
// Creates a data object.
DataObject^ myDataObject = gcnew DataObject;
// Stores a string, specifying the UnicodeText format.
myDataObject->SetData( DataFormats::UnicodeText, "Hello World!" );
// Retrieves the data by specifying the Text format.
String^ myMessageText = "The data type is " +
myDataObject->GetData( DataFormats::Text )->GetType()->Name;
// Displays the result.
MessageBox::Show( myMessageText, "The Test Result" );
}
private void SetData2()
{
// Creates a data object.
DataObject myDataObject = new DataObject();
// Stores a string, specifying the UnicodeText format.
myDataObject.SetData(DataFormats.UnicodeText, "Hello World!");
// Retrieves the data by specifying the Text format.
string myMessageText = "The data type is " + myDataObject.GetData(DataFormats.Text).GetType().Name;
// Displays the result.
MessageBox.Show(myMessageText, "The Test Result");
}
Private Sub SetData2()
' Creates a data object.
Dim myDataObject As New DataObject()
' Stores a string, specifying the UnicodeText format.
myDataObject.SetData(DataFormats.UnicodeText, "Hello World!")
' Retrieves the data by specifying the Text format.
Dim myMessageText As String = "The data type is " & _
myDataObject.GetData(DataFormats.Text).GetType().Name
' Displays the result.
MessageBox.Show(myMessageText, "The Test Result")
End Sub
Комментарии
Если вы не знаете формат целевого приложения, вы можете хранить данные в нескольких форматах с помощью этого метода.
Данные, хранящиеся с помощью этого метода, можно преобразовать в совместимый формат при извлечении.
Реализацию этого метода см. в разделе DataObject.SetData.
См. также раздел
Применяется к
SetData(Type, Object)
Сохраняет указанные данные и связанный с ними тип класса в этом экземпляре.
public:
void SetData(Type ^ format, System::Object ^ data);
public void SetData (Type format, object data);
public void SetData (Type format, object? data);
abstract member SetData : Type * obj -> unit
Public Sub SetData (format As Type, data As Object)
Параметры
- format
- Type
Тип Type, представляющий формат, связанный с данными. Сведения о предварительно определенных форматах см. в разделе DataFormats.
- data
- Object
Сохраняемые данные.
Примеры
В этом примере используется DataObject класс , который реализует IDataObject
, чтобы продемонстрировать использование SetData
метода . Во-первых, он создает компонент (myComponent
) и сохраняет его в объекте данных (myDataObject
), используя для myType
указания формата данных. Затем он проверяет, хранятся ли данные указанного типа в объекте , и отображает результат в окне сообщения. В примере предполагается, что вы создали объект с Form именем Form1
.
private:
void SetData3()
{
// Creates a component.
Component^ myComponent = gcnew Component;
// Gets the type of the component.
Type^ myType = myComponent->GetType();
// Creates a data object.
DataObject^ myDataObject = gcnew DataObject;
// Stores the component in the data object.
myDataObject->SetData( myType, myComponent );
// Checks whether data of the specified type is in the data object.
String^ myMessageText;
if ( myDataObject->GetDataPresent( myType ) )
{
myMessageText = "Data of type " + myType->Name +
" is stored in the data object";
}
else
{
myMessageText = "No data of type " + myType->Name +
" is stored in the data object";
}
// Displays the result.
MessageBox::Show( myMessageText, "The Test Result" );
}
private void SetData3()
{
// Creates a component.
Component myComponent = new Component();
// Gets the type of the component.
Type myType = myComponent.GetType();
// Creates a data object.
DataObject myDataObject = new DataObject();
// Stores the component in the data object.
myDataObject.SetData(myType, myComponent);
// Checks whether data of the specified type is in the data object.
string myMessageText;
if(myDataObject.GetDataPresent(myType))
myMessageText = "Data of type " + myType.Name +
" is stored in the data object";
else
myMessageText = "No data of type " + myType.Name +
" is stored in the data object";
// Displays the result.
MessageBox.Show(myMessageText, "The Test Result");
}
Private Sub SetData3()
' Creates a component.
Dim myComponent As New System.ComponentModel.Component()
' Gets the type of the component.
Dim myType As Type = myComponent.GetType()
' Creates a data object.
Dim myDataObject As New DataObject()
' Stores the component in the data object.
myDataObject.SetData(myType, myComponent)
' Checks whether data of the specified type is in the data object.
Dim myMessageText As String
If myDataObject.GetDataPresent(myType) Then
myMessageText = "Data of type " & myType.Name & " is stored in the data object"
Else
myMessageText = "No data of type " & myType.Name & " is stored in the data object"
End If
' Displays the result.
MessageBox.Show(myMessageText, "The Test Result")
End Sub
Комментарии
Если вы не знаете формат целевого приложения, вы можете хранить данные в нескольких форматах с помощью этого метода.
Данные, хранящиеся с помощью этого метода, можно преобразовать в совместимый формат при извлечении.
Реализацию этого метода см. в разделе DataObject.SetData.
См. также раздел
Применяется к
SetData(String, Boolean, Object)
Сохраняет указанные данные и связанный с ними формат в этом экземпляре и в значении типа Boolean задает, возможно ли преобразование данных в другой формат.
public:
void SetData(System::String ^ format, bool autoConvert, System::Object ^ data);
public void SetData (string format, bool autoConvert, object data);
public void SetData (string format, bool autoConvert, object? data);
abstract member SetData : string * bool * obj -> unit
Public Sub SetData (format As String, autoConvert As Boolean, data As Object)
Параметры
- format
- String
Формат, связанный с данными. Сведения о предварительно определенных форматах см. в разделе DataFormats.
- autoConvert
- Boolean
Значение true
, если необходимо разрешить преобразование данных в другой формат; в противном случае — значение false
.
- data
- Object
Сохраняемые данные.
Примеры
В этом примере используется DataObject класс , который реализует IDataObject
, чтобы продемонстрировать использование SetData
метода . Во-первых, он создает объект данных (myDataObject
) и сохраняет UnicodeText
в нем строку с параметром autoConvert
, равным false
. Затем он извлекает форматы, связанные с данными, хранящимися в объекте , и отображает результат в окне сообщения. Единственным форматом, связанным с данными UnicodeText
, является формат . В этом примере предполагается, что вы создали объект с Form именем Form1
.
private:
void SetData4()
{
// Creates a new data object.
DataObject^ myDataObject = gcnew DataObject;
// Adds UnicodeText string to the object, and set the autoConvert
// parameter to false.
myDataObject->SetData( DataFormats::UnicodeText, false, "My text String*" );
// Gets the data format(s) in the data object.
array<String^>^arrayOfFormats = myDataObject->GetFormats();
// Stores the results in a string.
String^ theResult = "The format(s) associated with the data are: \n";
for ( int i = 0; i < arrayOfFormats->Length; i++ )
theResult = theResult + arrayOfFormats[ i ], " \n";
// Show the results in a message box.
MessageBox::Show( theResult );
}
private void SetData4()
{
// Creates a new data object.
DataObject myDataObject = new DataObject();
// Adds UnicodeText string to the object, and set the autoConvert
// parameter to false.
myDataObject.SetData(DataFormats.UnicodeText, false, "My text string");
// Gets the data format(s) in the data object.
String[] arrayOfFormats = myDataObject.GetFormats();
// Stores the results in a string.
string theResult = "The format(s) associated with the data are:" + '\n';
for(int i=0; i<arrayOfFormats.Length; i++)
theResult += arrayOfFormats[i] + '\n';
// Show the results in a message box.
MessageBox.Show(theResult);
}
Private Sub SetData4()
' Creates a new data object.
Dim myDataObject As New DataObject()
' Adds UnicodeText string to the object, and set the autoConvert
' parameter to false.
myDataObject.SetData(DataFormats.UnicodeText, False, "My text string")
' Gets the data format(s) in the data object.
Dim arrayOfFormats As [String]() = myDataObject.GetFormats()
' Stores the results in a string.
Dim theResult As String = "The format(s) associated with the data are:" + _
ControlChars.Cr
Dim i As Integer
For i = 0 To arrayOfFormats.Length - 1
theResult += arrayOfFormats(i) + ControlChars.Cr
Next i
' Show the results in a message box.
MessageBox.Show(theResult)
End Sub
Комментарии
Если вы не знаете формат целевого приложения, вы можете хранить данные в нескольких форматах с помощью этого метода.
Реализацию этого метода см. в разделе DataObject.SetData.