Answer.OnValueFoundEvent Event

This event is fired for every value found for the particular answer. This event is fired during the processing of the Answer.IterateValues method.

Syntax

OnValueFoundEvent (value, repeat1, repeat2, repeat3, repeat4)

Parameter Description
VARIANT value The value found. This VARIANT is interpreted using the same rules as for the Value property.
long* repeat1 First repeat index for current value.
long* repeat2 Second repeat index for current value.
long* repeat3 Third repeat index for current value.
long* repeat4 Fourth repeat index for current value.

Example

The following Visual C# example opens an answer file and displays each answer it contains:

public class ExampleCode
{
    static string ansName;
    static string ansType;
     
    static void Main() 
    {
        HotDocs.AnswerCollection ac = new HotDocs.AnswerCollection();
        ac.Create(@"C:\Documents\HotDocs\Answers\AnswerFile.anx");
         
        Console.WriteLine("Variable\tAnswer\tType");
         
        foreach (HotDocs.Answer ans in ac)
        {
            ansName = ans.Name;
            ansType = getType(ans.Type);
            ans.OnValueFoundEvent += new HotDocs._AnswerEvents_OnValueFoundEventEventHandler(ans_OnValueFoundEvent); 
            ans.IterateValues(); 
        }
        Console.ReadKey();
         
        ac.Close();
    }
     
    static void ans_OnValueFoundEvent(object Value, int repeat1, int repeat2, int repeat3, int repeat4)
    {
        string index = ""; 
        string ansValue = ""; 
        if (repeat1 > -1) index = "[" + (repeat1 + 1).ToString() + "] ";
        //Check to see if the value is an array (multiple-select Multiple Choice variable)
        if (Value.GetType() == typeof(System.Object[]))
            foreach (string s in (System.Object[])Value)
            {
                ansValue += s + "; ";
            }
            else
                ansValue = Value.ToString();
              
            Console.WriteLine(index + ansName + "\t" + ansValue + "\t" + ansType);
    }
     
    static string getType(HotDocs.HDVARTYPE type)
    {
        switch (type)
        {
            case HotDocs.HDVARTYPE.HD_DATETYPE: 
                return "Date"; 
            case HotDocs.HDVARTYPE.HD_MULTCHOICETYPE: 
                return "Multiple Choice";
            case HotDocs.HDVARTYPE.HD_NUMBERTYPE: 
                return "Number"; 
            case HotDocs.HDVARTYPE.HD_TEXTTYPE: 
                return "Text"; 
            case HotDocs.HDVARTYPE.HD_TRUEFALSETYPE: 
                return "True/False"; 
            default:
                return type.ToString(); 
        }
    }
}