¿Hacer referencia a campos no estáticos de funciones estáticas y viceversa es imposible?
Quiero determinar mediante programación el espacio que tengo para algunos controles que quiero crear dinámicamente. Por lo tanto, quiero obtener la altura del contenedor y dividirla por el número de filas (una constante).
Tengo esta función (este código es parte del formulario en el que vive el panel llamado dynamicPanel):
<code>private static int getControlHeightToUse() { return (dynamicPanel.Height / NUMBER_OF_ROWS); } </code>
... lo que me da el error de tiempo de compilación, "* Se requiere una referencia de objeto para el campo, método o propiedad no estática RememberNextGen_CRLogins.CRLoginsMainForm.dynamicPanel '*"
No entiendo lo que está tratando de decirme / lo que quiere.
Si elimino la "estática":
<code>private int getControlHeightToUse() { return (dynamicPanel.Height / NUMBER_OF_ROWS); } </code>
... luego obtengo el error en tiempo de compilación, "* Un inicializador de campo no puede hacer referencia al campo, método o propiedad no estática 'TitanNextGen_CRLogins.CRLoginsMainForm.getControlHeightToUse ()' *"
... en la línea indicada abajo:
<code>public partial class CRLoginsMainForm : Form { int controlHeight = getControlHeightToUse(); // <-- err </code>