FieldFillIn

FieldFillIn class

Implementa il campo FILLIN.

Per saperne di più, visita ilLavorare con i campi articolo di documentazione.

public class FieldFillIn : Field

Costruttori

NomeDescrizione
FieldFillIn()Default_Costruttore

Proprietà

NomeDescrizione
DefaultResponse { get; set; }Ottiene o imposta la risposta utente predefinita (valore iniziale contenuto nella finestra del prompt).
DisplayResult { get; }Ottiene il testo che rappresenta il risultato del campo visualizzato.
End { get; }Ottiene il nodo che rappresenta la fine del campo.
Format { get; }Ottiene aFieldFormat oggetto che fornisce accesso digitato alla formattazione del campo.
IsDirty { get; set; }Ottiene o imposta se il risultato corrente del campo non è più corretto (obsoleto) a causa di altre modifiche apportate al documento.
IsLocked { get; set; }Ottiene o imposta se il campo è bloccato (non deve ricalcolare il risultato).
LocaleId { get; set; }Ottiene o imposta l’LCID del campo.
PromptOnceOnMailMerge { get; set; }Ottiene o imposta se la risposta dell’utente deve essere ricevuta una volta per un’operazione di stampa unione.
PromptText { get; set; }Ottiene o imposta il testo del prompt (il titolo della finestra del prompt).
Result { get; set; }Ottiene o imposta il testo compreso tra il separatore di campo e la fine del campo.
Separator { get; }Ottiene il nodo che rappresenta il separatore di campo. Può esserenullo .
Start { get; }Ottiene il nodo che rappresenta l’inizio del campo.
virtual Type { get; }Ottiene il tipo di campo Microsoft Word.

Metodi

NomeDescrizione
GetFieldCode()Restituisce il testo compreso tra l’inizio del campo e il separatore di campo (o la fine del campo se non è presente alcun separatore). Sono inclusi sia il codice di campo che il risultato del campo dei campi secondari.
GetFieldCode(bool)Restituisce il testo tra l’inizio del campo e il separatore di campo (o la fine del campo se non è presente alcun separatore).
Remove()Rimuove il campo dal documento. Restituisce un nodo subito dopo il campo. Se la fine del campo è l’ultimo figlio del suo nodo genitore, restituisce il paragrafo genitore. Se il campo è già stato rimosso, restituiscenullo .
Unlink()Esegue lo scollegamento del campo.
Update()Esegue l’aggiornamento del campo. Genera un risultato se il campo è già in fase di aggiornamento.
Update(bool)Esegue un aggiornamento del campo. Genera un risultato se il campo è già in fase di aggiornamento.

Osservazioni

Richiede all’utente di inserire testo.

Esempi

Mostra come utilizzare il campo FILLIN per richiedere una risposta all’utente.

public void FieldFillIn()
{
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    // Inserisci un campo FILLIN. Quando aggiorniamo manualmente questo campo in Microsoft Word,
    // ci chiederà di inserire una risposta. Il campo visualizzerà quindi la risposta come testo.
    FieldFillIn field = (FieldFillIn)builder.InsertField(FieldType.FieldFillIn, true);
    field.PromptText = "Please enter a response:";
    field.DefaultResponse = "A default response.";

    // Possiamo anche utilizzare questi campi per chiedere all'utente una risposta univoca per ogni pagina
    // creato durante una stampa unione eseguita utilizzando Microsoft Word.
    field.PromptOnceOnMailMerge = true;

    Assert.AreEqual(" FILLIN  \"Please enter a response:\" \\d \"A default response.\" \\o", field.GetFieldCode());

    FieldMergeField mergeField = (FieldMergeField)builder.InsertField(FieldType.FieldMergeField, true);
    mergeField.FieldName = "MergeField";

    // Se eseguiamo una stampa unione a livello di codice, possiamo utilizzare un risponditore prompt personalizzato
    // per modificare automaticamente le risposte per i campi FILLIN incontrati dalla stampa unione.
    doc.FieldOptions.UserPromptRespondent = new PromptRespondent();
    doc.MailMerge.Execute(new [] { "MergeField" }, new object[] { "" });

    doc.UpdateFields();
    doc.Save(ArtifactsDir + "Field.FILLIN.docx");
}

/// <summary>
/// Antepone una riga alla risposta predefinita di ogni campo FILLIN durante una stampa unione.
/// </summary>
private class PromptRespondent : IFieldUserPromptRespondent
{
    public string Respond(string promptText, string defaultResponse)
    {
        return "Response modified by PromptRespondent. " + defaultResponse;
    }
}

Guarda anche