Parametry opcjonalne w rozwiązaniach pakietu Office
Wiele metod w modelach obiektów aplikacja pakietu Office lication firmy Microsoft akceptuje opcjonalne parametry. Jeśli używasz programu Visual Basic do tworzenia rozwiązania pakietu Office w programie Visual Studio, nie musisz przekazywać wartości parametrów opcjonalnych, ponieważ wartości domyślne są automatycznie używane dla każdego brakującego parametru. W większości przypadków można również pominąć parametry opcjonalne w projektach Visual C#. Nie można jednak pominąć opcjonalnych parametrów ThisDocument
ref klasy w projektach programu Word na poziomie dokumentu.
Dotyczy: informacje w tym temacie dotyczą projektów na poziomie dokumentu i projektów dodatków VSTO. Zobacz Funkcje dostępne według aplikacja pakietu Office lication i typu projektu.
Aby uzyskać więcej informacji na temat pracy z parametrami opcjonalnymi w projektach Visual C# i Visual Basic, zobacz Nazwane i opcjonalne argumenty (Przewodnik programowania w języku C#) i Parametry opcjonalne (Visual Basic).
Uwaga
We wcześniejszych wersjach programu Visual Studio należy przekazać wartość dla każdego opcjonalnego parametru w projektach Visual C#. Dla wygody te projekty zawierają zmienną globalną o nazwie missing
, którą można przekazać do opcjonalnego parametru, gdy chcesz użyć wartości domyślnej parametru. Projekty visual C# dla pakietu Office w programie Visual Studio nadal zawierają zmienną missing
, ale zwykle nie trzeba ich używać podczas tworzenia rozwiązań pakietu Office w programie Visual Studio 2013, z wyjątkiem przypadków wywoływania metod z opcjonalnymi parametrami ref w klasie w ThisDocument
projektach na poziomie dokumentu dla programu Word.
Przykład w programie Excel
Metoda CheckSpelling ma wiele parametrów opcjonalnych. Można określić wartości dla niektórych parametrów i zaakceptować wartość domyślną innych, jak pokazano w poniższym przykładzie kodu. W tym przykładzie wymagany jest projekt na poziomie dokumentu z klasą arkusza o nazwie Sheet1
.
Przykład w programie Word
Metoda Execute ma wiele parametrów opcjonalnych. Można określić wartości dla niektórych parametrów i zaakceptować wartość domyślną innych, jak pokazano w poniższym przykładzie kodu.
Word.Range documentRange = this.Application.ActiveDocument.Content;
documentRange.Find.ClearFormatting();
documentRange.Find.Execute(FindText: "blue", ReplaceWith: "red", Replace: Word.WdReplace.wdReplaceAll);
Użyj opcjonalnych parametrów metod w klasie ThisDocument w projektach na poziomie dokumentu visual C# dla programu Word
Model obiektów programu Word zawiera wiele metod z opcjonalnymi parametrami ref , które akceptują Object wartości. Nie można jednak pominąć opcjonalnych parametrów ref metod wygenerowanej ThisDocument
klasy w projektach na poziomie dokumentów języka Visual C# dla programu Word. Język Visual C# umożliwia pominięcie opcjonalnych parametrów ref tylko dla metod interfejsów, a nie klas. Na przykład poniższy przykład kodu nie jest kompilowany, ponieważ nie można pominąć opcjonalnych parametrów CheckSpelling ref metody ThisDocument
klasy.
Globals.ThisDocument.CheckSpelling(ignoreUppercase: true);
Podczas wywoływania ThisDocument
metod klasy postępuj zgodnie z następującymi wytycznymi:
Aby zaakceptować wartość domyślną opcjonalnego parametru ref , przekaż zmienną
missing
do parametru. Zmiennamissing
jest automatycznie definiowana w projektach pakietu Office w języku Visual C# i jest przypisywana do wartości Missing w wygenerowany kod projektu.Aby określić własną wartość opcjonalnego parametru ref , zadeklaruj obiekt przypisany do wartości, którą chcesz określić, a następnie przekaż obiekt do parametru.
Poniższy przykład kodu pokazuje, jak wywołać CheckSpelling metodę, określając wartość parametru ignoreUppercase i akceptując wartość domyślną dla innych parametrów.
object ignoreUppercase = true; Globals.ThisDocument.CheckSpelling( ref missing, ref ignoreUppercase, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
Jeśli chcesz napisać kod, który pomija opcjonalne parametry ref metody w
ThisDocument
klasie, możesz alternatywnie wywołać tę samą metodę dla Document obiektu zwróconego przez InnerObject właściwość i pominąć parametry z tej metody. Można to zrobić, ponieważ Document jest interfejsem, a nie klasą.Globals.ThisDocument.InnerObject.CheckSpelling(IgnoreUppercase: true);
Aby uzyskać więcej informacji na temat parametrów wartości i typu odwołania, zobacz Pass arguments by value and by reference (Visual Basic) (For Visual Basic) (Przekazywanie argumentów według wartości) i Pass parameters (Przewodnik programowania w języku C#).