Udostępnij za pośrednictwem


ControlCollection.AddPictureContentControl Metoda

Definicja

Przeciążenia

AddPictureContentControl(Range, String)

Dodaje nowy PictureContentControl w określonym zakresie w dokumencie.

AddPictureContentControl(String)

Dodaje nowy PictureContentControl element do bieżącego zaznaczenia w dokumencie.

AddPictureContentControl(ContentControl, String)

Dodaje nowy PictureContentControl element oparty na natywnej kontrolce zawartości w dokumencie.

AddPictureContentControl(Range, String)

Dodaje nowy PictureContentControl w określonym zakresie w dokumencie.

public:
 Microsoft::Office::Tools::Word::PictureContentControl ^ AddPictureContentControl(Microsoft::Office::Interop::Word::Range ^ range, System::String ^ name);
public Microsoft.Office.Tools.Word.PictureContentControl AddPictureContentControl (Microsoft.Office.Interop.Word.Range range, string name);
abstract member AddPictureContentControl : Microsoft.Office.Interop.Word.Range * string -> Microsoft.Office.Tools.Word.PictureContentControl
Public Function AddPictureContentControl (range As Range, name As String) As PictureContentControl

Parametry

range
Range

Element Range , który zapewnia ograniczenia dla nowej kontrolki.

name
String

Nazwa nowego formantu.

Zwraca

Element PictureContentControl , który został dodany do dokumentu.

Wyjątki

name jest null lub ma zerową długość.

Kontrolka o tej samej nazwie znajduje się już w elemecie ControlCollection.

Przykłady

Poniższy przykład kodu dodaje nowy PictureContentControl element na początku dokumentu. W tym przykładzie przyjęto założenie, że plik o nazwie picture.bmp istnieje w folderze %UserProfile%\My Documents (dla systemu Windows XP i starszych) lub folderze %UserProfile%\Documents (dla systemu Windows Vista).

Ta wersja dotyczy dostosowywania na poziomie dokumentu. Aby użyć tego kodu, wklej go do ThisDocument klasy w projekcie i wywołaj metodę AddPictureControlAtRange z ThisDocument_Startup metody .

private Microsoft.Office.Tools.Word.PictureContentControl pictureControl2;
private System.Drawing.Bitmap bitmap2;

private void AddPictureControlAtRange()
{
    this.Paragraphs[1].Range.InsertParagraphBefore();
    pictureControl2 = this.Controls.AddPictureContentControl(
        this.Paragraphs[1].Range, "pictureControl2");

    string imagePath = System.Environment.GetFolderPath(
        Environment.SpecialFolder.MyDocuments) + "\\picture.bmp";
    bitmap2 = new System.Drawing.Bitmap(imagePath, true);
    pictureControl2.Image = bitmap2;
}
Dim pictureControl2 As Microsoft.Office.Tools.Word.PictureContentControl
Dim bitmap2 As System.Drawing.Bitmap

Private Sub AddPictureControlAtRange()
    Me.Paragraphs(1).Range.InsertParagraphBefore()
    pictureControl2 = Me.Controls.AddPictureContentControl(Me.Paragraphs(1).Range, "pictureControl2")
    Dim imagePath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments & _
            "\picture.bmp"
    bitmap2 = New System.Drawing.Bitmap(imagePath, True)
    pictureControl2.Image = bitmap2
End Sub

Ta wersja dotyczy dodatku na poziomie aplikacji przeznaczonego dla .NET Framework 4 lub .NET Framework 4.5. Aby użyć tego kodu, wklej go do ThisAddIn klasy w projekcie i wywołaj metodę AddPictureControlAtRange z ThisAddIn_Startup metody .

private Microsoft.Office.Tools.Word.PictureContentControl pictureControl2;
private System.Drawing.Bitmap bitmap2;

private void AddPictureControlAtRange()
{
    if (this.Application.ActiveDocument == null)
        return;

    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    vstoDoc.Paragraphs[1].Range.InsertParagraphBefore();
    pictureControl2 = vstoDoc.Controls.AddPictureContentControl(
        vstoDoc.Paragraphs[1].Range, "pictureControl2");

    string imagePath = System.Environment.GetFolderPath(
        Environment.SpecialFolder.MyDocuments) + "\\picture.bmp";
    bitmap2 = new System.Drawing.Bitmap(imagePath, true);
    pictureControl2.Image = bitmap2;
}
Dim pictureControl2 As Microsoft.Office.Tools.Word.PictureContentControl
Dim bitmap2 As System.Drawing.Bitmap

Private Sub AddPictureControlAtRange()
    If Me.Application.ActiveDocument Is Nothing Then
        Return
    End If

    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    vstoDoc.Paragraphs(1).Range.InsertParagraphBefore()
    pictureControl2 = vstoDoc.Controls.AddPictureContentControl( _
        vstoDoc.Paragraphs(1).Range, "pictureControl2")
    Dim imagePath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments & _
            "\picture.bmp"
    bitmap2 = New System.Drawing.Bitmap(imagePath, True)
    pictureControl2.Image = bitmap2
End Sub

Uwagi

Ta metoda służy do dodawania nowego PictureContentControl w określonym zakresie w dokumencie w czasie wykonywania. Aby uzyskać więcej informacji, zobacz Dodawanie kontrolek do dokumentów pakietu Office w czasie wykonywania.

Dotyczy

AddPictureContentControl(String)

Dodaje nowy PictureContentControl element do bieżącego zaznaczenia w dokumencie.

public:
 Microsoft::Office::Tools::Word::PictureContentControl ^ AddPictureContentControl(System::String ^ name);
public Microsoft.Office.Tools.Word.PictureContentControl AddPictureContentControl (string name);
abstract member AddPictureContentControl : string -> Microsoft.Office.Tools.Word.PictureContentControl
Public Function AddPictureContentControl (name As String) As PictureContentControl

Parametry

name
String

Nazwa nowego formantu.

Zwraca

Element PictureContentControl , który został dodany do dokumentu.

Wyjątki

name jest null lub ma zerową długość.

Kontrolka o tej samej nazwie znajduje się już w elemecie ControlCollection.

Przykłady

Poniższy przykład kodu dodaje nowy PictureContentControl element na początku dokumentu. W tym przykładzie przyjęto założenie, że plik o nazwie picture.bmp istnieje w folderze %UserProfile%\My Documents (dla systemu Windows XP i starszych) lub folderze %UserProfile%\Documents (dla systemu Windows Vista).

Ta wersja dotyczy dostosowywania na poziomie dokumentu. Aby użyć tego kodu, wklej go do ThisDocument klasy w projekcie i wywołaj metodę AddPictureControlAtSelection z ThisDocument_Startup metody .

private Microsoft.Office.Tools.Word.PictureContentControl pictureControl1;
private System.Drawing.Bitmap bitmap1;

private void AddPictureControlAtSelection()
{
    this.Paragraphs[1].Range.InsertParagraphBefore();
    this.Paragraphs[1].Range.Select();

    pictureControl1 = this.Controls.AddPictureContentControl("pictureControl1");

    string imagePath = System.Environment.GetFolderPath(
        Environment.SpecialFolder.MyDocuments) + "\\picture.bmp";
    bitmap1 = new System.Drawing.Bitmap(imagePath, true);
    pictureControl1.Image = bitmap1;
}
Dim pictureControl1 As Microsoft.Office.Tools.Word.PictureContentControl
Dim bitmap1 As System.Drawing.Bitmap

Private Sub AddPictureControlAtSelection()
    Me.Paragraphs(1).Range.InsertParagraphBefore()
    Me.Paragraphs(1).Range.Select()
    pictureControl1 = Me.Controls.AddPictureContentControl("pictureControl1")
    Dim imagePath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments & _
            "\picture.bmp"
    bitmap1 = New System.Drawing.Bitmap(imagePath, True)
    pictureControl1.Image = bitmap1
End Sub

Ta wersja dotyczy dodatku na poziomie aplikacji przeznaczonego dla .NET Framework 4 lub .NET Framework 4.5. Aby użyć tego kodu, wklej go do ThisAddIn klasy w projekcie i wywołaj metodę AddPictureControlAtSelection z ThisAddIn_Startup metody .

private Microsoft.Office.Tools.Word.PictureContentControl pictureControl1;
private System.Drawing.Bitmap bitmap1;

private void AddPictureControlAtSelection()
{
    if (this.Application.ActiveDocument == null)
        return;

    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    vstoDoc.Paragraphs[1].Range.InsertParagraphBefore();
    vstoDoc.Paragraphs[1].Range.Select();

    pictureControl1 = vstoDoc.Controls.AddPictureContentControl("pictureControl1");

    string imagePath = System.Environment.GetFolderPath(
        Environment.SpecialFolder.MyDocuments) + "\\picture.bmp";
    bitmap1 = new System.Drawing.Bitmap(imagePath, true);
    pictureControl1.Image = bitmap1;
}
Dim pictureControl1 As Microsoft.Office.Tools.Word.PictureContentControl
Dim bitmap1 As System.Drawing.Bitmap

Private Sub AddPictureControlAtSelection()
    If Me.Application.ActiveDocument Is Nothing Then
        Return
    End If

    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    vstoDoc.Paragraphs(1).Range.InsertParagraphBefore()
    vstoDoc.Paragraphs(1).Range.Select()
    pictureControl1 = vstoDoc.Controls.AddPictureContentControl("pictureControl1")
    Dim imagePath As String = My.Computer.FileSystem.SpecialDirectories.MyDocuments & _
            "\picture.bmp"
    bitmap1 = New System.Drawing.Bitmap(imagePath, True)
    pictureControl1.Image = bitmap1
End Sub

Uwagi

Ta metoda służy do dodawania nowego PictureContentControl do bieżącego zaznaczenia w dokumencie w czasie wykonywania. Aby uzyskać więcej informacji, zobacz Dodawanie kontrolek do dokumentów pakietu Office w czasie wykonywania.

Dotyczy

AddPictureContentControl(ContentControl, String)

Dodaje nowy PictureContentControl element oparty na natywnej kontrolce zawartości w dokumencie.

public:
 Microsoft::Office::Tools::Word::PictureContentControl ^ AddPictureContentControl(Microsoft::Office::Interop::Word::ContentControl ^ contentControl, System::String ^ name);
public Microsoft.Office.Tools.Word.PictureContentControl AddPictureContentControl (Microsoft.Office.Interop.Word.ContentControl contentControl, string name);
abstract member AddPictureContentControl : Microsoft.Office.Interop.Word.ContentControl * string -> Microsoft.Office.Tools.Word.PictureContentControl
Public Function AddPictureContentControl (contentControl As ContentControl, name As String) As PictureContentControl

Parametry

contentControl
ContentControl

Jest ContentControl to podstawa nowej kontrolki.

name
String

Nazwa nowego formantu.

Zwraca

Element PictureContentControl , który został dodany do dokumentu.

Wyjątki

contentControl jest null.-or- name lub null ma zerową długość.

Kontrolka o tej samej nazwie znajduje się już w elemecie ControlCollection.

contentControlnie jest galerią bloków konstrukcyjnych (czyli Type właściwością contentControl nie ma wartości Microsoft.Office.Interop.Word. WdContentControlType.wdContentControlPicture).

Przykłady

Poniższy przykład kodu tworzy nowy PictureContentControl dla każdej natywnej kontrolki obrazu, która znajduje się w dokumencie.

Ta wersja dotyczy dostosowywania na poziomie dokumentu. Aby użyć tego kodu, wklej go do ThisDocument klasy w projekcie i wywołaj metodę CreatePictureControlFromNativeControl z ThisDocument_Startup metody .

private System.Collections.Generic.List
   <Microsoft.Office.Tools.Word.PictureContentControl> pictureControls;

private void CreatePictureControlFromNativeControl()
{
    if (this.ContentControls.Count <= 0)
        return;

    pictureControls = new System.Collections.Generic.List
        <Microsoft.Office.Tools.Word.PictureContentControl>();
    int count = 0;

    foreach (Word.ContentControl nativeControl in this.ContentControls)
    {
        if (nativeControl.Type == Word.WdContentControlType.wdContentControlPicture)
        {
            count++;
            Microsoft.Office.Tools.Word.PictureContentControl tempControl =
                this.Controls.AddPictureContentControl(nativeControl,
                "VSTOPictureContentControl" + count.ToString());
            pictureControls.Add(tempControl);
        }
    }
}
Private pictureControls As New System.Collections.Generic.List _
        (Of Microsoft.Office.Tools.Word.PictureContentControl)

Private Sub CreatePictureControlsFromNativeControls()
    If Me.ContentControls.Count <= 0 Then
        Return
    End If

    Dim count As Integer = 0
    For Each nativeControl As Word.ContentControl In Me.ContentControls
        If nativeControl.Type = Word.WdContentControlType.wdContentControlPicture Then
            count += 1
            Dim tempControl As Microsoft.Office.Tools.Word.PictureContentControl = _
                Me.Controls.AddPictureContentControl(nativeControl, _
                "VSTOPictureContentControl" + count.ToString())
            pictureControls.Add(tempControl)
        End If
    Next nativeControl
End Sub

Ta wersja dotyczy dodatku na poziomie aplikacji przeznaczonego dla .NET Framework 4 lub .NET Framework 4.5. Aby użyć tego kodu, wklej go do ThisAddIn klasy w projekcie i wywołaj metodę CreatePictureControlFromNativeControl z ThisAddIn_Startup metody .

private System.Collections.Generic.List
   <Microsoft.Office.Tools.Word.PictureContentControl> pictureControls;

private void CreatePictureControlFromNativeControl()
{
    if (this.Application.ActiveDocument == null)
        return;

    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    if (vstoDoc.ContentControls.Count <= 0)
        return;

    pictureControls = new System.Collections.Generic.List
        <Microsoft.Office.Tools.Word.PictureContentControl>();
    int count = 0;

    foreach (Word.ContentControl nativeControl in vstoDoc.ContentControls)
    {
        if (nativeControl.Type == Word.WdContentControlType.wdContentControlPicture)
        {
            count++;
            Microsoft.Office.Tools.Word.PictureContentControl tempControl =
                vstoDoc.Controls.AddPictureContentControl(nativeControl,
                "VSTOPictureContentControl" + count.ToString());
            pictureControls.Add(tempControl);
        }
    }
}
Private pictureControls As New System.Collections.Generic.List _
        (Of Microsoft.Office.Tools.Word.PictureContentControl)

Private Sub CreatePictureControlsFromNativeControls()
    If Me.Application.ActiveDocument Is Nothing Then
        Return
    End If

    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    If vstoDoc.ContentControls.Count <= 0 Then
        Return
    End If

    Dim count As Integer = 0
    For Each nativeControl As Word.ContentControl In vstoDoc.ContentControls
        If nativeControl.Type = Word.WdContentControlType.wdContentControlPicture Then
            count += 1
            Dim tempControl As Microsoft.Office.Tools.Word.PictureContentControl = _
                vstoDoc.Controls.AddPictureContentControl(nativeControl, _
                "VSTOPictureContentControl" + count.ToString())
            pictureControls.Add(tempControl)
        End If
    Next nativeControl
End Sub

Poniższy przykład kodu tworzy nowy PictureContentControl dla każdej natywnej kontrolki obrazu, którą użytkownik dodaje do dokumentu.

Ta wersja dotyczy dostosowywania na poziomie dokumentu. Aby użyć tego kodu, wklej go do ThisDocument klasy w projekcie. W języku C# należy również dołączyć ThisDocument_PictureContentControlAfterAdd program obsługi zdarzeń do ContentControlAfterAdd zdarzenia ThisDocument klasy .

void ThisDocument_PictureContentControlAfterAdd(Word.ContentControl NewContentControl, bool InUndoRedo)
{
    if (NewContentControl.Type == Word.WdContentControlType.wdContentControlPicture)
    {
        this.Controls.AddPictureContentControl(NewContentControl,
            "PictureControl" + NewContentControl.ID);
    }
}
Private Sub ThisDocument_PictureContentControlAfterAdd(ByVal NewContentControl As Word.ContentControl, _
    ByVal InUndoRedo As Boolean) Handles Me.ContentControlAfterAdd

    If NewContentControl.Type = Word.WdContentControlType.wdContentControlPicture Then
        Me.Controls.AddPictureContentControl(NewContentControl, _
            "PictureControl" + NewContentControl.ID)
    End If
End Sub

Ta wersja dotyczy dodatku na poziomie aplikacji przeznaczonego dla .NET Framework 4 lub .NET Framework 4.5. Aby użyć tego kodu, wklej go do ThisAddIn klasy w projekcie. Ponadto należy dołączyć procedurę ActiveDocument_PictureContentControlAfterAdd obsługi zdarzeń do ContentControlAfterAdd zdarzenia aktywnego dokumentu.

void ActiveDocument_PictureContentControlAfterAdd(
    Word.ContentControl NewContentControl, bool InUndoRedo)
{
    Document vstoDoc = Globals.Factory.GetVstoObject(this.Application.ActiveDocument);
    if (NewContentControl.Type == Word.WdContentControlType.wdContentControlPicture)
    {
        vstoDoc.Controls.AddPictureContentControl(NewContentControl,
            "PictureControl" + NewContentControl.ID);
    }
}
Private Sub ActiveDocument_PictureContentControlAfterAdd( _
    ByVal NewContentControl As Word.ContentControl, _
    ByVal InUndoRedo As Boolean)

    Dim vstoDoc As Document = Globals.Factory.GetVstoObject(Me.Application.ActiveDocument)
    If NewContentControl.Type = Word.WdContentControlType. _
        wdContentControlPicture Then
        vstoDoc.Controls.AddPictureContentControl(NewContentControl, _
            "PictureControl" + NewContentControl.ID)
    End If
End Sub

Uwagi

Użyj tej metody, aby dodać nową PictureContentControl , która jest oparta na natywnej kontrolce zawartości w dokumencie w czasie wykonywania. Jest to przydatne podczas tworzenia PictureContentControl w czasie wykonywania i chcesz ponownie utworzyć tę samą kontrolkę przy następnym otwarciu dokumentu. Aby uzyskać więcej informacji, zobacz Dodawanie kontrolek do dokumentów pakietu Office w czasie wykonywania.

Dotyczy