Udostępnij za pośrednictwem


Formant ListObject

ListObject Kontroli jest lista, która udostępnia zdarzenia i może być powiązany z danymi.Po dodaniu listy do arkusza, Visual Studio tworzy ListObject kontroli, które można zaprogramować przeciwko bezpośrednio bez konieczności przechodzenia do modelu obiektu programu Microsoft Office Excel.

Dotyczy: Informacje przedstawione w tym temacie dotyczą projektów na poziomie dokumentu i projektów na poziomie aplikacji dla programów Excel 2013 i Excel 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacji pakietu Office i typ projektu.

Tworzenie formantu

W przypadku projektów na poziomie dokumentu, można dodać ListObject formantów do arkusza w czasie projektowania lub w czasie wykonywania.W przypadku projektów na poziomie aplikacji, można dodać ListObject formanty do arkuszy tylko w czasie wykonywania.Aby uzyskać więcej informacji, zobacz Jak: dodawanie formantów ListObject do arkuszy.

[!UWAGA]

Domyślnie, dynamicznie utworzona lista obiektów nie są zachowywane w arkuszu jako host Określa, kiedy arkusz jest zamknięty.Aby uzyskać więcej informacji, zobacz Dodawanie formantów do dokumentów pakietu Office w czasie wykonywania.

Wiązanie danych do formantu

A ListObject formant obsługuje wiązania danych proste i złożone.ListObject Formant można powiązać do źródła danych przy użyciu DataSource i DataMember właściwości w czasie projektowania lub SetDataBinding metoda w czasie wykonywania.

[!UWAGA]

ListObject Jest automatycznie aktualizowany, gdy jest związany ze źródłem danych, takich jak DataTable, który informuje o zdarzeniach, po zmianie danych.W przypadku powiązania ListObject do źródła danych, które nie podnoszą zdarzenia po zmianie danych, należy wywołać RefreshDataRow lub RefreshDataRows metoda aktualizacji ListObject.

Po dodaniu ListObject z komórką arkusza mapowanie powtarzający się element schematu do tej komórki automatycznie mapuje Visual Studio ListObject do wygenerowanego zestawu danych.Jednakże ListObject automatycznie nie jest związana z danymi.Można podjąć kroki w celu powiązania ListObject do zestawu danych w czasie projektowania lub w czasie wykonania w projekt na poziomie dokumentu.Można powiązać programowo ListObject do zestawu danych w czasie wykonywania w poziomie aplikacji dodatek.

Ponieważ dane są oddzielone od ListObject, należy dodawanie i usuwanie danych za pomocą zestawu danych związanych, a nie bezpośrednio przez ListObject.Jeśli dane w zestawie danych związany jest aktualizowana przez mechanizm, ListObject formant automatycznie odzwierciedla zmiany.Aby uzyskać więcej informacji, zobacz Wiązanie danych do formantów w rozwiązania dla pakietu Office.

Można szybko wypełnić ListObject kontroli przez powiązanie ListObject ze źródłem danych.Jeśli możesz edytować dane w powiązane z danymi ListObject, automatycznie zmian w źródle danych, jak również.Jeśli chcesz wypełnić ListObject , a następnie Włącz użytkownikowi na zmianę danych w ListObject bez modyfikowania źródła danych, można użyć Disconnect metoda odłączyć ListObject ze źródła danych.Aby uzyskać więcej informacji, zobacz Jak: wypełnienia formantów ListObject z danymi.

[!UWAGA]

Wiązanie danych nie jest obsługiwany w nakładających się ListObject kontroli.

2ttzcbhb.collapse_all(pl-pl,VS.110).gifZwiększanie wydajności w formantach obiektu ListObject

Czytanie pliku XML do powiązanego z danymi ListObject kontroli wydaje się być wolniejsze, jeśli najpierw powiązać formant, a następnie wywołać ReadXml do wypełnienia obiektu dataset.Aby zwiększyć wydajność, wywołanie ReadXml przed powiąże się formant.

2ttzcbhb.collapse_all(pl-pl,VS.110).gifRozłączanie obiektu ListObject formanty ze źródła danych

Po wypełnieniu ListObject formant z danymi przez to powiązanie ze źródłem danych, można go odłączyć tak, że modyfikacje danych w obiekcie listy nie wpływają na źródle danych.Aby uzyskać więcej informacji, zobacz Jak: wypełnienia formantów ListObject z danymi.

2ttzcbhb.collapse_all(pl-pl,VS.110).gifPrzywracanie kolumny i wiersza zlecenia

Kiedy wiązania danych do ListObject kontroli, który został dodany do dokumentu w czasie projektowania programu Visual Studio informacje o kolejności kolumn i wierszy w każdym przypadku, gdy skoroszyt jest zapisywany.Jeśli użytkownik przenosi ListObject kolumn lub wierszy w czasie wykonywania, nowe zamówienie jest zachowywane po następnym otwarciu skoroszytu i ListObject kontroli wiąże się ze źródłem danych ponownie.

Jeśli chcesz przywrócić ListObject do oryginalnej kolumny i wiersza zamówienia, można wywołać ResetPersistedBindingInformation metoda.Ta metoda usuwa właściwości niestandardowych dokumentu dotyczące kolumny i wiersza kolejność określona ListObject.Wywołanie tej metody z Shutdown zdarzenie skoroszytu, jeśli nie chcesz zachować kolejność kolumn i wierszy ListObject.

Formatowanie

Formatowanie, które mogą być stosowane do Microsoft.Office.Interop.Excel.ListObject mogą być stosowane do Microsoft.Office.Tools.Excel.ListObject kontroli.Obejmuje to obramowań, czcionek, format liczbowy i stylów.Użytkowników końcowych można zmienić rozmieszczenie kolumn danych związana ListObject, a zmiany te zostaną utrwalone w dokumencie, pod warunkiem, ListObject został dodany do dokumentu w czasie projektowania.Następnym razem, gdy dokument jest otwarty, obiekt listy będą zobowiązane do tego samego źródła danych, ale kolejność kolumn będzie odzwierciedlać zmian wprowadzanych przez użytkowników.

Dodawanie i usuwanie kolumn w czasie wykonywania

Nie można ręcznie dodać lub usunąć kolumny w danych związana ListObject kontroli w czasie wykonywania.Jeśli użytkownik końcowy próbuje usunąć kolumnę, natychmiast zostanie przywrócona i kolumny, wszelkie dodane zostaną usunięte.Dlatego ważne jest, aby napisać kod, aby wyjaśnić użytkownikom, dlaczego nie mogą wykonywać te akcje na ListObject który jest powiązany z danymi.Visual Studio udostępnia kilka zdarzeń na ListObject dotyczy wiązania danych.Na przykład, można użyć OriginalDataRestored zdarzenie, aby ostrzec użytkowników, które dane mają próbował usunąć nie można usunąć i został przywrócony.

Dodawanie i usuwanie wierszy w czasie wykonywania

Można ręcznie dodać i usunąć wiersze w danych związana ListObject kontroli, pod warunkiem, że źródło danych umożliwia dodanie nowych wierszy i nie jest tylko do odczytu.Można napisać kod przeciwko zdarzeń takich jak BeforeAddDataBoundRow do sprawdzania poprawności danych.Aby uzyskać więcej informacji, zobacz Jak: Sprawdzanie poprawności danych podczas dodawania nowego wiersza do formantu ListObject.

Czasami relacji obiektu listy ze źródłem danych powoduje błędy rutynowych.Na przykład, można mapować kolumny, które mają się pojawiać w ListObject, więc jeśli pominięto parametr kolumny, które mają ograniczenia, takie jak pola, które nie akceptuje wartości null, błędy są wywoływane za każdym razem, gdy wiersz jest tworzony.Można napisać kod, aby dodać brakujące wartości w module obsługi zdarzeń dla ErrorAddDataBoundRow zdarzenie.

Zmiana nazwy obiektu ListObject formantów w programie Excel

Program Excel umożliwia użytkownikom zmianę nazwy tabel programu Excel w czasie wykonywania za pomocą Projekt kartę.Jednakże ListObject kontroli nie obsługuje tej funkcji.Jeśli użytkownik próbuje zmienić nazwę tabeli programu Excel, który odpowiada ListObject, nazwę tabeli, program Excel automatycznie zostanie przywrócona oryginalna nazwa przy zapisywaniu skoroszytu.

Zdarzenia

Następujące zdarzenia są dostępne dla ListObject kontroli:

Zobacz też

Zadania

Jak: dodawanie formantów ListObject do arkuszy

Jak: Zmienianie rozmiaru formantów ListObject

Jak: Sprawdzanie poprawności danych podczas dodawania nowego wiersza do formantu ListObject

Jak: mapowanie kolumn ListObject do danych

Jak: wypełnienia formantów ListObject z danymi

Jak: wypełnianie arkuszach z danymi z bazy danych

Koncepcje

Automatyzowanie programu Excel przy użyciu obiektów rozszerzony

Rozszerzanie dokumenty programu Word oraz skoroszyty programu Excel w dodatki poziomie aplikacji w czasie wykonywania

Dodawanie formantów do dokumentów pakietu Office w czasie wykonywania

Ograniczenia programowy hosta elementów i kontrolek hosta

Inne zasoby

Przykłady programowania pakietu Office oraz instruktaże

Wiązanie danych do formantów w rozwiązania dla pakietu Office

Kontrole dokumentów pakietu Office