Clipboard.SetDataObject Metod

Definition

Rensar Urklipp och lägger sedan till data i det.

Överlagringar

Name Description
SetDataObject(Object)

Rensar Urklipp och placerar sedan icke-existerande data på den.

SetDataObject(Object, Boolean)

Rensar Urklipp och placerar sedan data på det och anger om data ska finnas kvar när programmet har avslutats.

SetDataObject(Object, Boolean, Int32, Int32)

Rensar Urklipp och försöker sedan placera data på den det angivna antalet gånger och med den angivna fördröjningen mellan försöken, om du vill lämna data i Urklipp när programmet har avslutats.

SetDataObject(Object)

Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs

Rensar Urklipp och placerar sedan icke-existerande data på den.

public:
 static void SetDataObject(System::Object ^ data);
public static void SetDataObject(object data);
static member SetDataObject : obj -> unit
Public Shared Sub SetDataObject (data As Object)

Parametrar

data
Object

De data som ska lagras i Urklipp.

Undantag

Det gick inte att placera data i Urklipp. Detta inträffar vanligtvis när Urklipp används av en annan process.

Den aktuella tråden är inte i sta-läge (single-threaded apartment). Lägg till i STAThreadAttribute programmets Main metod.

Värdet data för är null.

Exempel

I följande kodexempel används SetDataObject för att placera icke-existerande textdata på systemets Urklipp. button1_Click I metoden kopieras den markerade texten från textBox1 och klistras in i Urklipp. button2_Click I metoden hämtas informationen från Urklipp och visas i textBox2. Den här koden förutsätter button1, button2, textBox1och textBox2 har skapats och placerats i ett formulär.

private:
   void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Takes the selected text from a text box and puts it on the clipboard.
      if ( !textBox1->SelectedText->Equals( "" ) )
      {
         Clipboard::SetDataObject( textBox1->SelectedText );
      }
      else
      {
         textBox2->Text = "No text selected in textBox1";
      }
   }

   void button2_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Declares an IDataObject to hold the data returned from the clipboard.
      // Retrieves the data from the clipboard.
      IDataObject^ iData = Clipboard::GetDataObject();
      
      // Determines whether the data is in a format you can use.
      if ( iData->GetDataPresent( DataFormats::Text ) )
      {
         // Yes it is, so display it in a text box.
         textBox2->Text = (String^)(iData->GetData( DataFormats::Text ));
      }
      else
      {
         // No it is not.
         textBox2->Text = "Could not retrieve data off the clipboard.";
      }
   }
private void button1_Click(object sender, System.EventArgs e) {
    // Takes the selected text from a text box and puts it on the clipboard.
    if(textBox1.SelectedText != "")
       Clipboard.SetDataObject(textBox1.SelectedText);
    else
       textBox2.Text = "No text selected in textBox1";
 }
 
 private void button2_Click(object sender, System.EventArgs e) {
    // Declares an IDataObject to hold the data returned from the clipboard.
    // Retrieves the data from the clipboard.
    IDataObject iData = Clipboard.GetDataObject();
 
    // Determines whether the data is in a format you can use.
    if(iData.GetDataPresent(DataFormats.Text)) {
       // Yes it is, so display it in a text box.
       textBox2.Text = (String)iData.GetData(DataFormats.Text); 
    }
    else {
       // No it is not.
       textBox2.Text = "Could not retrieve data off the clipboard.";
    }
 }
Private Sub button1_Click(sender As Object, e As System.EventArgs)
    ' Takes the selected text from a text box and puts it on the clipboard.
    If textBox1.SelectedText <> "" Then
        Clipboard.SetDataObject(textBox1.SelectedText)
    Else
        textBox2.Text = "No text selected in textBox1"
    End If
End Sub
 
Private Sub button2_Click(sender As Object, e As System.EventArgs)
    ' Declares an IDataObject to hold the data returned from the clipboard.
    ' Retrieves the data from the clipboard.
    Dim iData As IDataObject = Clipboard.GetDataObject()
    
    ' Determines whether the data is in a format you can use.
    If iData.GetDataPresent(DataFormats.Text) Then
        ' Yes it is, so display it in a text box.
        textBox2.Text = CType(iData.GetData(DataFormats.Text), String)
    Else
        ' No it is not.
        textBox2.Text = "Could not retrieve data off the clipboard."
    End If
End Sub

Kommentarer

Data tas bort från urklipp i systemet när programmet avslutas.

Den här metoden försöker ange data tio gånger i 100 millisekunders intervall och genererar ett ExternalException om alla försök misslyckas.

Note

Ett objekt måste vara serialiserbart för att det ska kunna placeras i Urklipp. Om du skickar ett icke-serialiserbart objekt till den här metoden misslyckas det utan ett undantag. Mer System.Runtime.Serialization information om serialisering finns i.

Klassen Clipboard kan endast användas i trådar som är inställda på sta-läge (single thread apartment). Om du vill använda den här klassen kontrollerar du att din Main-metod har markerats med attributet STAThreadAttribute.

Se även

Gäller för

SetDataObject(Object, Boolean)

Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs

Rensar Urklipp och placerar sedan data på det och anger om data ska finnas kvar när programmet har avslutats.

public:
 static void SetDataObject(System::Object ^ data, bool copy);
public static void SetDataObject(object data, bool copy);
static member SetDataObject : obj * bool -> unit
Public Shared Sub SetDataObject (data As Object, copy As Boolean)

Parametrar

data
Object

De data som ska lagras i Urklipp.

copy
Boolean

trueom du vill att data ska finnas kvar i Urklipp när programmet har avslutats. annars . false

Undantag

Det gick inte att placera data i Urklipp. Detta inträffar vanligtvis när Urklipp används av en annan process.

Den aktuella tråden är inte i sta-läge (single-threaded apartment). Lägg till i STAThreadAttribute programmets Main metod.

Värdet data för är null.

Exempel

Följande metod körs i ett program. Den placerar en beständig kopia av markerade textdata i textrutan i systemets Urklipp. Den här koden förutsätter button1, textBox1och textBox2 har skapats och placerats i ett formulär.

private:
   void button1_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Takes the selected text from a text box and puts it on the clipboard.
      if ( !textBox1->SelectedText->Equals( "" ) )
      {
         Clipboard::SetDataObject( textBox1->SelectedText, true );
      }
      else
      {
         textBox2->Text = "No text selected in textBox1";
      }
   }
private void button1_Click(object sender, System.EventArgs e) {
    // Takes the selected text from a text box and puts it on the clipboard.
    if(textBox1.SelectedText != "")
       Clipboard.SetDataObject(textBox1.SelectedText, true);
    else
       textBox2.Text = "No text selected in textBox1";
 }
Private Sub button1_Click(sender As Object, e As System.EventArgs)
    ' Takes the selected text from a text box and puts it on the clipboard.
    If textBox1.SelectedText <> "" Then
        Clipboard.SetDataObject(textBox1.SelectedText, True)
    Else
        textBox2.Text = "No text selected in textBox1"
    End If
End Sub

I ett annat program hämtar följande metod texten från systemets Urklipp och klistrar in texten i textBox2. Den här koden förutsätter och button2 har skapats textBox2 och placerats i ett formulär.

private:
   void button2_Click( Object^ /*sender*/, System::EventArgs^ /*e*/ )
   {
      // Declares an IDataObject to hold the data returned from the clipboard.
      // Retrieves the data from the clipboard.
      IDataObject^ iData = Clipboard::GetDataObject();
      
      // Determines whether the data is in a format you can use.
      if ( iData->GetDataPresent( DataFormats::Text ) )
      {
         
         // Yes it is, so display it in a text box.
         textBox2->Text = (String^)(iData->GetData( DataFormats::Text ));
      }
      else
      {
         
         // No it is not.
         textBox2->Text = "Could not retrieve data off the clipboard.";
      }
   }
private void button2_Click(object sender, System.EventArgs e) {
    // Declares an IDataObject to hold the data returned from the clipboard.
    // Retrieves the data from the clipboard.
    IDataObject iData = Clipboard.GetDataObject();
 
    // Determines whether the data is in a format you can use.
    if(iData.GetDataPresent(DataFormats.Text)) {
       // Yes it is, so display it in a text box.
       textBox2.Text = (String)iData.GetData(DataFormats.Text); 
    }
    else {
       // No it is not.
       textBox2.Text = "Could not retrieve data off the clipboard.";
    }
 }
Private Sub button2_Click(sender As Object, e As System.EventArgs)
    ' Declares an IDataObject to hold the data returned from the clipboard.
    ' Retrieves the data from the clipboard.
    Dim iData As IDataObject = Clipboard.GetDataObject()
    
    ' Determines whether the data is in a format you can use.
    If iData.GetDataPresent(DataFormats.Text) Then
        ' Yes it is, so display it in a text box.
        textBox2.Text = CType(iData.GetData(DataFormats.Text), String)
    Else
        ' No it is not.
        textBox2.Text = "Could not retrieve data off the clipboard."
    End If
End Sub

Kommentarer

Om parametern copy är falsetas data bort från urklipp i systemet när programmet avslutas.

Den här metoden försöker ange data tio gånger i 100 millisekunders intervall och genererar ett ExternalException om alla försök misslyckas.

Note

Ett objekt måste vara serialiserbart för att det ska kunna placeras i Urklipp. Om du skickar ett icke-serialiserbart objekt till den här metoden misslyckas det utan ett undantag. Mer System.Runtime.Serialization information om serialisering finns i.

Klassen Clipboard kan endast användas i trådar som är inställda på sta-läge (single thread apartment). Om du vill använda den här klassen kontrollerar du att din Main-metod har markerats med attributet STAThreadAttribute.

Se även

Gäller för

SetDataObject(Object, Boolean, Int32, Int32)

Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs
Källa:
Clipboard.cs

Rensar Urklipp och försöker sedan placera data på den det angivna antalet gånger och med den angivna fördröjningen mellan försöken, om du vill lämna data i Urklipp när programmet har avslutats.

public:
 static void SetDataObject(System::Object ^ data, bool copy, int retryTimes, int retryDelay);
public static void SetDataObject(object data, bool copy, int retryTimes, int retryDelay);
static member SetDataObject : obj * bool * int * int -> unit
Public Shared Sub SetDataObject (data As Object, copy As Boolean, retryTimes As Integer, retryDelay As Integer)

Parametrar

data
Object

De data som ska lagras i Urklipp.

copy
Boolean

trueom du vill att data ska finnas kvar i Urklipp när programmet har avslutats. annars . false

retryTimes
Int32

Antal gånger som data ska placeras i Urklipp.

retryDelay
Int32

Antalet millisekunder som ska pausas mellan försöken.

Undantag

Den aktuella tråden är inte i sta-läge (single-threaded apartment). Lägg till i STAThreadAttribute programmets Main metod.

data är null.

retryTimes är mindre än noll.

-eller-

retryDelay är mindre än noll.

Det gick inte att placera data i Urklipp. Detta inträffar vanligtvis när Urklipp används av en annan process.

Kommentarer

Att lägga till data i Urklipp kan ibland misslyckas om Urklipp är upptaget med en annan tråd eller ett annat program. Den här metoden är användbar för att kringgå det här problemet i miljöer med tung urklippsanvändning.

Om parametern copy är falsetas data bort från urklipp i systemet när programmet avslutas.

Note

Ett objekt måste vara serialiserbart för att det ska kunna placeras i Urklipp. Om du skickar ett icke-serialiserbart objekt till den här metoden misslyckas det utan ett undantag. Mer System.Runtime.Serialization information om serialisering finns i.

Klassen Clipboard kan endast användas i trådar som är inställda på sta-läge (single thread apartment). Om du vill använda den här klassen kontrollerar du att din Main-metod har markerats med attributet STAThreadAttribute.

Se även

Gäller för