DataObject 클래스

정의

데이터를 전송하기 위한 형식 독립적 메커니즘을 정의하는 IDataObject 인터페이스의 기본 구현을 제공합니다.

public ref class DataObject sealed : System::Runtime::InteropServices::ComTypes::IDataObject, System::Windows::IDataObject
public sealed class DataObject : System.Runtime.InteropServices.ComTypes.IDataObject, System.Windows.IDataObject
type DataObject = class
    interface IDataObject
    interface IDataObject
Public NotInheritable Class DataObject
Implements IDataObject, IDataObject
상속
DataObject
구현

예제

다음 예제에서는 이 클래스를 사용하는 방법을 보여줍니다.

string stringData = "Some string data to store...";
string dataFormat = DataFormats.UnicodeText;
DataObject dataObject = new DataObject(dataFormat, stringData);
Dim stringData As String = "Some string data to store..."
Dim dataFormat As String = DataFormats.UnicodeText
Dim dataObject As New DataObject(dataFormat, stringData)

설명

중요

신뢰할 수 없는 데이터로 이 클래스에서 메서드를 호출하는 것은 보안상 위험합니다. 신뢰할 수 있는 데이터로만 이 클래스에서 메서드를 호출하세요. 자세한 내용은 모든 입력 유효성 검사를 참조하세요.

생성자

DataObject()

DataObject 클래스의 새 인스턴스를 초기화합니다.

DataObject(Object)

지정된 데이터가 들어 있는 DataObject 클래스의 새 인스턴스를 초기화합니다.

DataObject(String, Object)

지정된 데이터 및 연결된 형식이 들어 있는 DataObject 클래스의 인스턴스를 초기화합니다. 형식은 문자열로 지정됩니다.

DataObject(String, Object, Boolean)

지정된 데이터 및 연결된 형식이 들어 있는 DataObject 클래스의 인스턴스를 초기화합니다. 형식은 문자열로 지정됩니다. 이 오버로드에는 데이터를 검색할 때 다른 형식으로 변환할 수 있는지 여부를 나타내는 Boolean 플래그가 포함됩니다.

DataObject(Type, Object)

지정된 데이터 및 연결된 형식이 들어 있는 DataObject 클래스의 인스턴스를 초기화합니다. 데이터 서식은 Type 개체로 지정됩니다.

필드

CopyingEvent

Copying 연결된 이벤트를 식별합니다.

PastingEvent

Pasting 연결된 이벤트를 식별합니다.

SettingDataEvent

SettingData 연결된 이벤트를 식별합니다.

메서드

AddCopyingHandler(DependencyObject, DataObjectCopyingEventHandler)

지정된 종속성 개체에 Copying 이벤트 처리기를 추가합니다.

AddPastingHandler(DependencyObject, DataObjectPastingEventHandler)

지정된 종속성 개체에 Pasting 이벤트 처리기를 추가합니다.

AddSettingDataHandler(DependencyObject, DataObjectSettingDataEventHandler)

지정된 종속성 개체에 SettingData 이벤트 처리기를 추가합니다.

ContainsAudio()

WaveAudio 데이터 서식의 데이터가 있는지 데이터 개체에 쿼리합니다.

ContainsFileDropList()

FileDrop 데이터 서식의 데이터가 있는지 데이터 개체에 쿼리합니다.

ContainsImage()

Bitmap 데이터 서식의 데이터가 있는지 데이터 개체에 쿼리합니다.

ContainsText()

UnicodeText 형식의 데이터가 있는지 데이터 개체에 쿼리합니다.

ContainsText(TextDataFormat)

텍스트 데이터 서식의 데이터가 있는지 데이터 개체에 쿼리합니다.

Equals(Object)

지정된 개체가 현재 개체와 같은지 확인합니다.

(다음에서 상속됨 Object)
GetAudioStream()

WaveAudio 데이터 서식의 데이터가 들어 있는 스트림을 반환합니다.

GetData(String)

문자열로 지정된 형식의 데이터를 반환합니다.

GetData(String, Boolean)

지정된 형식의 데이터 개체를 반환하고 선택적으로 데이터를 지정된 형식으로 변환합니다.

GetData(Type)

Type 개체로 지정된 형식의 데이터 개체를 반환합니다.

GetDataPresent(String)

문자열로 지정된 형식의 데이터가 있거나 지정된 형식으로 변환될 수 있는지 확인합니다.

GetDataPresent(String, Boolean)

지정된 형식의 데이터가 있거나 지정된 형식으로 변환될 수 있는지 확인합니다. Boolean 플래그는 지정된 형식의 데이터가 없는 경우 데이터를 해당 형식으로 변환할 수 있는지 확인할지 여부를 나타냅니다.

GetDataPresent(Type)

Type 개체로 지정된 형식의 데이터가 있거나 지정된 형식으로 변환될 수 있는지 확인합니다.

GetFileDropList()

끌어 놓은 파일 목록이 들어 있는 문자열 컬렉션을 반환합니다.

GetFormats()

이 데이터 개체의 데이터가 저장되거나 변환될 수 있는 형식 목록을 반환합니다.

GetFormats(Boolean)

이 데이터 개체의 데이터가 저장되는 형식의 목록을 반환합니다. Boolean 플래그는 데이터가 자동으로 변환될 수 있는 형식도 포함할지 여부를 나타냅니다.

GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetImage()

BitmapSource 형식의 데이터가 들어 있는 Bitmap 개체를 반환합니다.

GetText()

이 데이터 개체의 UnicodeText 데이터가 들어 있는 문자열을 반환합니다.

GetText(TextDataFormat)

이 데이터 개체에 있는 지정된 형식의 텍스트 데이터가 들어 있는 문자열을 반환합니다.

GetType()

현재 인스턴스의 Type을 가져옵니다.

(다음에서 상속됨 Object)
MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
RemoveCopyingHandler(DependencyObject, DataObjectCopyingEventHandler)

지정된 종속성 개체에 대한 Copying 이벤트 처리기를 제거합니다.

RemovePastingHandler(DependencyObject, DataObjectPastingEventHandler)

지정된 종속성 개체에 대한 Pasting 이벤트 처리기를 제거합니다.

RemoveSettingDataHandler(DependencyObject, DataObjectSettingDataEventHandler)

지정된 종속성 개체에 대한 SettingData 이벤트 처리기를 제거합니다.

SetAudio(Byte[])

오디오 데이터(WaveAudio 데이터 서식)를 이 데이터 개체에 저장합니다. 오디오 데이터는 바이트 배열로 지정됩니다.

SetAudio(Stream)

오디오 데이터(WaveAudio 데이터 서식)를 이 데이터 개체에 저장합니다. 오디오 데이터는 스트림으로 지정됩니다.

SetData(Object)

이 데이터 개체에 지정된 데이터를 저장하고 소스 개체 형식을 사용하여 데이터 서식을 자동으로 결정합니다.

SetData(String, Object)

하나 이상의 지정된 데이터 형식과 함께 지정된 데이터를 이 데이터 개체에 저장합니다. 데이터 형식은 문자열로 지정됩니다.

SetData(String, Object, Boolean)

이 데이터 개체에 지정된 데이터를 하나 이상의 지정된 데이터 형식과 함께 저장합니다. 이 오버로드에는 데이터를 검색할 때 다른 형식으로 변환할 수 있는지 여부를 나타내는 Boolean 플래그가 포함됩니다.

SetData(Type, Object)

지정된 데이터를 하나 이상의 지정된 데이터 서식과 함께 이 데이터 개체에 저장합니다. 데이터 서식은 Type 개체로 지정됩니다.

SetFileDropList(StringCollection)

이 데이터 개체에 FileDrop 데이터를 저장합니다. 끌어 놓은 파일 목록은 문자열 컬렉션으로 지정됩니다.

SetImage(BitmapSource)

이 데이터 개체에 Bitmap 데이터를 저장합니다. 이미지 데이터는 BitmapSource로 지정됩니다.

SetText(String)

문자열로 지정된 UnicodeText 데이터를 이 데이터 개체에 저장합니다.

SetText(String, TextDataFormat)

이 데이터 개체에 텍스트 데이터를 저장합니다. 저장할 텍스트 데이터의 형식은 TextDataFormat의 멤버로 지정됩니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)

연결된 이벤트

Copying

연결된 종속성 개체가 선택 영역 복사를 나타내는 적절한 데이터 형식을 준비했고, 선택 영역 복사 형식을 DataObject에 추가했으며, DataObjectClipboard에 배치하거나 끌어서 놓기 작업을 시작할 준비가 되면 발생합니다.

Pasting

연결된 종속성 개체에서 데이터를 붙여 넣을 준비가 되었을 때 발생합니다.

SettingData

연결된 종속성 개체에서 DataObject에 새 데이터 형식을 추가하려고 할 때 발생합니다.

명시적 인터페이스 구현

IDataObject.DAdvise(FORMATETC, ADVF, IAdviseSink, Int32)

데이터 개체와 advise 싱크 간의 연결을 만듭니다. 이 메서드는 advise 싱크를 지원하는 개체에 의해 호출되며, advise 싱크가 개체의 데이터 변경 내용에 대한 알림을 받을 수 있도록 합니다.

IDataObject.DUnadvise(Int32)

이전에 설정된 알림 연결을 제거합니다.

IDataObject.EnumDAdvise(IEnumSTATDATA)

현재 advise 연결을 열거하는 데 사용할 수 있는 개체를 만듭니다.

IDataObject.EnumFormatEtc(DATADIR)

데이터 개체의 FORMATETC 구조체를 열거하기 위한 개체를 만듭니다. 이러한 구조체는 GetData(FORMATETC, STGMEDIUM) 또는 SetData(FORMATETC, STGMEDIUM, Boolean)를 호출할 때 사용됩니다.

IDataObject.GetCanonicalFormatEtc(FORMATETC, FORMATETC)

보다 복잡한 구조체와 논리적으로 일치하는 표준 FORMATETC 구조체를 제공합니다. 이 메서드를 사용하면 서로 다른 두 개의 FORMATETC 구조체에서 동일한 데이터를 반환하는지 여부를 확인하여 중복 렌더링이 필요하지 않게 할 수 있습니다.

IDataObject.GetData(FORMATETC, STGMEDIUM)

소스 데이터 개체에서 데이터를 가져옵니다. 데이터 소비자에 의해 호출되는 GetData(FORMATETC, STGMEDIUM) 메서드는 지정된 FORMATETC 구조체에 설명된 데이터를 렌더링하고, 지정된 STGMEDIUM 구조체를 통해 이 데이터를 전송합니다. 그러면 호출자는 STGMEDIUM 구조체를 해제하는 역할을 맡습니다.

IDataObject.GetDataHere(FORMATETC, STGMEDIUM)

소스 데이터 개체에서 데이터를 가져옵니다. 데이터 소비자가 호출하는 이 메서드는 지정된 스토리지 미디어를 호출자가 할당하고 해제해야 한다는 점에서 GetData(FORMATETC, STGMEDIUM) 메서드와 차이가 있습니다.

IDataObject.QueryGetData(FORMATETC)

데이터 개체가 FORMATETC 구조체에 설명된 데이터를 렌더링할 수 있는지 여부를 확인합니다. 붙여넣기 또는 놓기 작업을 시도하는 개체에서는 GetData(FORMATETC, STGMEDIUM)를 호출하기 전에 이 메서드를 호출하여 해당 작업을 수행할 수 있는지 여부를 나타내는 값을 가져올 수 있습니다.

IDataObject.SetData(FORMATETC, STGMEDIUM, Boolean)

이 메서드를 구현하는 개체에 데이터를 전송합니다. 이 메서드는 데이터 소스가 들어 있는 개체에서 호출됩니다.

적용 대상

추가 정보