Hi Patrick,
... to tell the truth --- I don´t understand what you mean. In my experience it is not allowed to declare a member variable in the form code regardless of 'private' or 'public'. If you declare such a variable for example:
private (or public) Log4Net log4net;
you can´t upload the form in the 'Central administration' in SharePoint cause SharePoint shows an error message while you want upload such a form...
In the meantime I have found the reason why you can´t store the 'Log4Net' object in FormState. It´s because the 'Log4Net' object is not serializable and as FormState implements IDictionary --- it is essential that every variable which you want to store in FormState must be serializable...
Regards,