Formanty zawartości
Formanty zawartości umożliwiają dla Ciebie projektu dokumenty i szablony, które mają te cechy:
Interfejs użytkownika (UI), który kontrolował dane tak, jak formularz.
Ograniczenia, które uniemożliwiają użytkownikom edycji chronionych sekcji dokumentu lub szablonu.Aby uzyskać więcej informacji, zobacz Ochrona części dokumentów przy użyciu formantów zawartości.
Wiązanie danych do źródła danych.Aby uzyskać więcej informacji, zobacz Wiązanie danych do formantów zawartości.
Zastosowanie: Informacje przedstawione w tym temacie mają zastosowanie do projektów na poziomie dokumentu i aplikacji obsługiwanych w programach Word 2013 i Word 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacjach pakietu Office i typ projektu.
Aby wyświetlić pokrewne wideo demonstracyjne, zobacz Wiązanie danych do programu Word 2007 zawartość formantów za pomocą Visual Studio Tools dla pakietu Office System (3.0).
Przegląd formanty zawartości
Formanty zawartości umożliwiają interfejsu użytkownika, który jest zoptymalizowany dla zarówno użytkownika, wprowadzania i drukowania.Po dodaniu formantu zawartości do dokumentu formant jest identyfikowany przez obramowanie, tytuł i tekst tymczasowy, który można dostarczyć instrukcje dla użytkownika.Obramowania i tytuł formantu nie pojawiają się w drukowanej wersji dokumentu.
Na przykład jeśli chcesz, aby użytkownik, aby wprowadzić datę w sekcji w dokumencie, można dodać zawartość formantu wyboru daty do dokumentu.Gdy użytkownik kliknie formant, pojawi się formant wyboru daty standardowego interfejsu użytkownika.Można również ustawić właściwości formantu do regionalnych kalendarz, który jest wyświetlany i określić format daty.Po wybraniu daty UI formant jest ukryty, a tylko data jest wyświetlana, gdy użytkownik drukuje dokument.
Kontrola zawartości również należy wykonać następujące czynności:
Uniemożliwić użytkownikom edytowania lub usuwania części dokumentu.Jest to przydatne, jeśli informacje w dokumencie lub użytkowników powinny być w stanie odczytać, ale nie edytować szablon lub jeśli chcesz, aby użytkownicy mogli edytować formantów zawartości, ale nie można je usunąć.
Części dokumentu lub szablonu, należy powiązać dane.Można powiązać formanty zawartości pól bazy danych, zarządzane obiekty w .NET Framework, elementy XML, które są przechowywane w dokumencie i innych źródeł danych.
W przypadku projektów na poziomie dokumentu można dodać formanty zawartości dokumentu w czasie projektowania lub w czasie wykonywania.W przypadku projektów na poziomie aplikacji można dodać formanty zawartości do otwartego dokumentu, w czasie wykonywania.Aby uzyskać więcej informacji, zobacz Porady: dodawanie formantów zawartości do dokumentów programu Word.
[!UWAGA]
Formanty zawartości można użyć tylko w dokumentach, które są zapisane w formacie Open XML.Nie można używać formantów zawartości w dokumentach, które są zapisane w formacie programu Word 97-2003 (.doc).
Typy formantów zawartości
Istnieje dziewięć różnych typów formantów zawartości, które można dodawać do dokumentów.Większość formantów zawartości ma odpowiedni typ w Microsoft.Office.Tools.Word obszaru nazw.Można również użyć rodzajowego ContentControl, który może reprezentować żadnego z dostępnych formantów zawartości.Instruktaż, który pokazuje, jak używać każdego z dostępnych formantów zawartości, zobacz Wskazówki: tworzenie szablonu za pomocą formantów zawartości.
Galeria bloków konstrukcyjnych
Galeria bloków konstrukcyjnych umożliwia użytkownikom wybieranie z listy bloków konstrukcyjnych dokumentu , aby wstawić do dokumentu.Blok konstrukcyjny dokumentu jest zawartości, która została utworzona w celu można użyć wiele razy, takich jak wspólne strony tytułowe, sformatowanej tabeli lub nagłówka.Aby uzyskać więcej informacji, zobacz BuildingBlockGalleryContentControl typu.Aby uzyskać więcej informacji na temat bloki konstrukcyjne, zobacz Nowości dla deweloperów w programie Word 2007.
Pole wyboru
Pole wyboru udostępnia interfejs użytkownika, reprezentujący stanu binarnego: zaznaczone lub wyczyszczone.
W przeciwieństwie do innych rodzajów formantów zawartości Visual Studio Tools for Office Runtime nie zawiera określonego typu, który reprezentuje formantu zawartości pola wyboru.Innymi słowy, ma nie CheckBoxContentControl typu.Jednak nadal można utworzyć formantu zawartości pola wyboru przez dodanie rodzajowego ContentControl do dokumentu programowego.Aby uzyskać więcej informacji, zobacz Pole wyboru formanty zawartości w programie Word projektów.
Pole kombi
Pole kombi Wyświetla listę elementów, które użytkownicy mogą wybierać.W przeciwieństwie do listy rozwijanej pole kombi pozwala użytkownikom na dodawanie własnych elementów.Aby uzyskać więcej informacji, zobacz ComboBoxContentControl typu.
Formant wyboru daty
Wybór daty udostępnia kalendarz interfejsu użytkownika dla zaznaczonego dnia.Kalendarz pojawia się, gdy użytkownik kliknie strzałkę rozwijaną w formancie.Można użyć regionalnych kalendarzy i różnych formatów daty.Aby uzyskać więcej informacji, zobacz DatePickerContentControl typu.
Listy rozwijanej
Listy rozwijanej Wyświetla listę elementów, które użytkownicy mogą wybierać.W odróżnieniu od pola kombi listy rozwijanej nie pozwala użytkownikom dodawanie lub edytowanie elementów.Aby uzyskać więcej informacji, zobacz DropDownListContentControl typu.
Grupa
Kontrola Grupa definiuje chroniony obszar dokumentu, że użytkownicy nie można edytować ani usuwać.Kontrola grupa może zawierać jakichkolwiek elementów dokumentu, takich jak tekst, tabele, grafiki i inne formanty zawartości.Aby uzyskać więcej informacji, zobacz GroupContentControl typu.
Obraz
Formant obrazu wyświetlany obraz.Można określić obraz w czasie projektowania lub czas jednostkowy lub użytkownicy mogą kliknąć ten formant, aby wybrać obraz do wstawienia w dokumencie.Aby uzyskać więcej informacji, zobacz PictureContentControl typu.
Tekst sformatowany
Zawiera formant tekstu sformatowanego tekstu lub innych elementów, takich jak tabele, obrazy lub inne formanty zawartości.Aby uzyskać więcej informacji, zobacz RichTextContentControl typu.
Zwykły tekst
Kontrola zwykły tekst zawiera tekst.Kontrola zwykły tekst nie może zawierać inne elementy, takie jak tabele, obrazy lub inne formanty zawartości.Ponadto ma cały tekst w formancie tekstu zwykłego, to samo formatowanie.Na przykład jeśli umożliwia zastosowanie kursywy jeden wyraz zdania, że jest w formancie tekstu zwykłego, cały tekst wewnątrz formantu jest pisany kursywą.Aby uzyskać więcej informacji, zobacz PlainTextContentControl typu.
Rodzajowy formant zawartości
Rodzajowy formant zawartości jest ContentControl obiekt, który może reprezentować żadnego z dostępnych typów formantów zawartości.Można zmienić ContentControl obiektu zachowywać się jak inny typ formantu zawartości za pomocą Type właściwość.Na przykład, jeśli tworzysz ContentControl obiektu, że stanowi zwykły tekst kontroli, można zmienić go w czasie wykonywania tak, że zachowuje się jak pole kombi.
Można utworzyć ContentControl obiektów tylko w czasie wykonywania, a nie w czasie projektowania.Aby uzyskać więcej informacji, zobacz Porady: dodawanie formantów zawartości do dokumentów programu Word.
Wspólne cechy formanty zawartości
Formanty zawartości najbardziej udostępnić zestaw elementów członkowskich, które można używać do wykonywania typowych zadań.W poniższej tabeli opisano niektóre z zadań, które można wykonać za pomocą tych członków.
Dla tego zadania: |
Wykonaj następujące czynności: |
---|---|
Lub zestawu tekst, który jest wyświetlany w formancie. |
Użyj właściwości Text.
|
Lub zestawu tymczasowych tekst, który jest wyświetlany w formancie, aż użytkownik edytuje formantu, formant jest wypełniona danych ze źródła danych lub zawartość formantu są usuwane. |
Użyj właściwości PlaceholderText.
|
Lub tytuł, który jest wyświetlany w obramowanie formantu zawartości, gdy użytkownik kliknie to zestawu. |
Użyj właściwości Title. |
Usunąć formant z dokumentu automatycznie po użytkownik edytuje kontroli.(Tekst w formancie pozostaje w dokumencie). |
Użyj właściwości Temporary. |
Uruchomienie kodu, gdy użytkownik kliknie w formancie zawartości lub gdy kursor jest przesuwany do formantu zawartości programowo. |
Obsługi Entering zdarzenia formantu. |
Uruchomienie kodu, gdy użytkownik kliknie poza formantu zawartości lub gdy kursor jest przesuwany poza kontrolą zawartości programowo. |
Obsługi Exiting zdarzenia formantu. |
Uruchomienie kodu, po dodaniu do dokumentu w wyniku przerobić formantu zawartości lub cofnąć operacji. |
Obsługi Added zdarzenia formantu. |
Tuż przed formant zawartości jest usunięte z dokumentu, należy uruchomić kod. |
Obsługi Deleting zdarzenia formantu. |
Ochrona części dokumentów przy użyciu formantów zawartości
Ochrona części dokumentu, można uniemożliwić użytkownikom zmienianie lub usuwanie zawartości w tej części dokumentu.Istnieje kilka sposobów, w części dokumentu można chronić za pomocą formantów zawartości.
Jeśli obszar który chcesz chronić znajduje się wewnątrz formantu zawartości, można użyć właściwości formantu zawartości, aby uniemożliwić użytkownikom edytowanie lub usuwanie formantu:
LockContents Właściwość uniemożliwia użytkownikom edytowanie zawartości.
LockContentControl Właściwość uniemożliwia użytkownikom usuwanie formantu.
Jeśli obszar, który chcesz chronić nie wewnątrz formantu zawartości, lub jeśli ma być chroniony obszar, który zawiera formanty zawartości i innych typów zawartości, można umieścić cały obszar w GroupContentControl.W przeciwieństwie do innych formantów zawartości GroupContentControl zapewnia brak interfejsu użytkownika, który jest widoczny dla użytkownika.Jej celem jest określenie regionu, że użytkownicy nie mogą edytować.
[!UWAGA]
Jeśli tworzysz GroupContentControl zawierających wbudowane formanty zawartości, wbudowane formanty zawartości nie są chronione automatycznie.Należy użyć LockContents właściwość każdego osadzony formant, aby uniemożliwić użytkownikom edytowanie ich zawartości.
Aby uzyskać więcej informacji na temat używania formantów zawartości do ochrony części dokumentów, zobacz Porady: ochrona części dokumentów za pomocą formantów zawartości.
Wiązanie danych do formantów zawartości
Można wyświetlić dane w dokumentach przez powiązanie formantu zawartości ze źródłem danych.Po zaktualizowaniu źródła danych, formant zawartości odzwierciedla zmiany.Można również zapisać zmiany, wróć do źródła danych.
Formanty zawartości udostępniają następujące opcje powiązania danych:
Można powiązać formanty zawartości pól bazy danych lub obiektów zarządzanych za pomocą tego samego modelu wiązania danych jako Windows Forms.
Elementy w kawałkach XML można powiązać formanty zawartości (również o nazwie niestandardowe elementy XML) osadzonych w dokumencie.
Omówienie powiązanie formantów hosta w rozwiązania pakietu Office do danych, zobacz Wiązanie danych do formantów w rozwiązaniach pakietu Office.
Przy użyciu powiązania Model danych Windows Forms
Formanty zawartości najbardziej obsługuje model wiązania danych prosty, który używa Windows Forms.Powiązanie danych proste oznacza, że formant jest związany z element danych, na przykład wartość w kolumnie tabeli danych.Aby uzyskać więcej informacji, zobacz Wiązanie danych i formularze systemu Windows.
W przypadku projektów na poziomie dokumentu, można powiązać dane formanty zawartości za pomocą Źródła danych okna w Visual Studio.Aby uzyskać więcej informacji na temat dodawania formantów zawartości powiązanego z danymi do dokumentów, zobacz Porady: zapełnianie dokumentów danymi z bazy danych i Porady: zapełnianie dokumentów danymi z obiektów.
W poniższej tabeli przedstawiono formanty zawartości, które można powiązać z każdego typu danych w Źródła danych okna.
Typ danych |
Formant zawartości domyślnej |
Inne formanty zawartości, które mogą być powiązane z tego typu danych |
---|---|---|
ByteTablica |
Brak |
W dokumencie poziomie aplikacji i projektów, można powiązać formant zawartości źródła danych programowo przy użyciu Add metoda DataBindings właściwości formantu.Jeśli w tym celu przekazać w ciągu Text do propertyName parametr Add metoda.Text Właściwość jest domyślna właściwość wiązania danych formanty zawartości.
Formanty zawartości obsługuje również Wiązanie dwustronne, w którym zmiany w formancie są aktualizowane do źródła danych.Aby uzyskać więcej informacji, zobacz Porady: aktualizowanie źródła danych danymi z formanty hosta.
[!UWAGA]
Formanty zawartości nie obsługują wiązania danych złożonych.W przypadku powiązania DropDownListContentControl lub ComboBoxContentControl do źródła danych przy użyciu modelu danych Windows Forms, użytkownicy zobaczą tylko jedną wartość, po kliknięciu formantu.Jeśli chcesz powiązać z zestawu wartości danych, które użytkownicy mogą wybierać spośród tych formantów można powiązać formanty te elementy w niestandardowych części XML.
Powiązanie formantów zawartości z częściami XML niestandardowe
Niektóre formanty zawartości można powiązać elementy w niestandardowych części XML, które są osadzone w dokumencie.Aby uzyskać więcej informacji na temat niestandardowe elementy XML, zobacz Niestandardowe części XML ― Omówienie.
Aby powiązać formant zawartości elementu w niestandardowa część kodu XML, użyj XMLMapping właściwości formantu.Poniższy przykład kodu pokazuje, jak powiązać PlainTextContentControl do Price element pod Product węzła w niestandardowa część kodu XML, który został już dodany do dokumentu.
plainTextContentControl1.XMLMapping.SetMapping("/Product/Price")
plainTextContentControl1.XMLMapping.SetMapping("/Product/Price", String.Empty, null);
Instruktaż, który pokazuje, jak powiązać formanty zawartości niestandardowej części XML bardziej szczegółowo, zobacz Wskazówki: wiązanie formantów zawartości do niestandardowych części XML.
Gdy powiąże się formant zawartości z niestandardowa część kodu XML, Wiązanie dwustronne jest włączany automatycznie.Jeśli użytkownik dokona edycji tekstu w formancie, odpowiadające im elementy XML są automatycznie aktualizowane.Podobnie jeśli wartości elementów w niestandardowych części XML są zmieniane, formantów zawartości, które są związane z elementów XML wyświetlić nowe dane.
Następujące typy formantów zawartości można powiązać niestandardowe elementy XML:
Powiązania zdarzeń dla formantów zawartości danych
Wszystkie formanty zawartości umożliwiają zestaw zdarzeń, które może obsługiwać do wykonywania zadań związanych z danymi, takie jak sprawdzanie poprawności tekstu w formancie spełnia określone kryteria, zanim źródło danych jest aktualizowana.Poniższa tabela zawiera listę zdarzeń formant zawartości, które są związane z wiązania z danymi.
Zadanie |
Zdarzenie |
---|---|
Wykonać kod tylko w przypadku, zanim program Word automatycznie aktualizuje tekstu w formancie zawartości, który jest powiązany z niestandardowa część kodu XML. |
|
Uruchomić kod po prostu, zanim program Word automatycznie aktualizuje dane w niestandardowa część kodu XML, który jest powiązany z kontroli zawartości (po zmienia tekst w formancie zawartości). |
|
Uruchom własny kod do sprawdzania poprawności zawartości formantu, według kryteriów niestandardowych. |
|
Uruchomienie kodu po zawartość formantu został pomyślnie sprawdzony. |
Ograniczenia formanty zawartości
Używając formantów zawartości w projektach pakietu Office, należy pamiętać o następujących ograniczeniach.
Różnice sposobów działania w czasie projektowania i wykonywania
Wiele ograniczeń, które program Microsoft Office Word nakłada na formanty zawartości w czasie wykonywania nie są wymuszane w czasie projektowania.Podczas projektowania interfejsu użytkownika roztworu poziomie dokumentu, w Visual Studio, należy zmodyfikować formantów zawartości, tylko w sposób, że są obsługiwane w czasie wykonywania.
Jeśli modyfikujesz formant zawartości w czasie projektowania w sposób, który nie obsługuje kontroli w czasie wykonywania, Visual Studio projektant nie będzie wyświetlany alert o zmianach nieobsługiwane.Jednak podczas debugowania lub uruchamianie projektu lub Zapisz, a następnie ponownie otwórz projekt, program Word wyświetli błąd wiadomości i zażądać uprawnień do naprawy dokumentu.Podczas naprawy dokumentu program Word usuwa wszystkie nieobsługiwane zawartości i formatowania z formantu.
Na przykład, program Word nie uniemożliwiają dodanie tabeli do PlainTextContentControl w czasie projektowania.Jednakże ponieważ PlainTextContentControl obiekty nie mogą zawierać tabele w czasie wykonywania, program Word wyświetli komunikat o błędzie, gdy dokument jest otwarty.
Należy również zauważyć, że wiele właściwości, które definiują zachowanie formantów zawartości nie mają wpływu na czas projektowania.Na przykład, jeśli LockContents właściwość formantu zawartości, aby True w czasie projektowania, można nadal edytować tekst w formancie w Visual Studio designer.Ta właściwość jedynie uniemożliwia użytkownikom edycję formantu w czasie wykonywania.
Ograniczenia zdarzeń
Formanty zawartości nie zapewniają zdarzenie jest wywoływane, gdy użytkownik zmieni tekst lub innych elementów w formancie.Na przykład, nie ma żadnych zdarzenie jest wywoływane, gdy użytkownik wybierze inny element w DropDownListContentControl lub ComboBoxContentControl.
Aby ustalić, kiedy użytkownik edytuje zawartość formantu zawartości, można powiązać formant z niestandardowa część kodu XML, a następnie obsługiwać StoreUpdating zdarzenie.To zdarzenie jest wywoływane, gdy użytkownik zmieni zawartość formantu powiązanego z niestandardowa część kodu XML.Instruktaż, który pokazuje, jak chcesz powiązać formant zawartości niestandardowa część kodu XML, zobacz Wskazówki: wiązanie formantów zawartości do niestandardowych części XML.
Formanty zawartości pól wyboru w projektach programu Word
Word 2010 wprowadziła nowy typ zawartości formantu, który reprezentuje pole wyboru.Jednakże Visual Studio Tools for Office Runtime nie zapewnia odpowiadającego CheckBoxContentControl typu do użycia w projektach dla pakietu Office.Aby utworzyć formant zawartości pola wyboru w Word 2013 lub projektu programu Word 2010, użyj AddContentControl metoda tworzenia ContentControl obiektu i przekazać wdContentControlCheckBox wartość do metody, aby określić formant zawartości pola wyboru.Poniższy przykład kodu demonstruje, jak to zrobić.
Me.Paragraphs(1).Range.InsertParagraphBefore()
Me.Paragraphs(1).Range.Select()
Dim checkBoxControl1 As Microsoft.Office.Tools.Word.ContentControl =
Me.Controls.AddContentControl("checkBoxControl1", Word.WdContentControlType.wdContentControlCheckBox)
checkBoxControl1.Checked = True
this.Paragraphs[1].Range.InsertParagraphBefore();
this.Paragraphs[1].Range.Select();
Microsoft.Office.Tools.Word.ContentControl checkBoxControl1 =
this.Controls.AddContentControl("checkBoxControl1", Word.WdContentControlType.wdContentControlCheckBox);
checkBoxControl1.Checked = true;
Zobacz też
Zadania
Porady: dodawanie formantów zawartości do dokumentów programu Word
Wskazówki: tworzenie szablonu za pomocą formantów zawartości
Koncepcje
Automatyzowanie programu Word za pomocą obiektów rozszerzonych
Ograniczenia programowe elementów hosta i formantów hosta