Referenciando campos não estáticos de funções estáticas e vice-versa é impossível?
Eu quero determinar programaticamente o espaço que tenho para alguns controles que eu quero criar dinamicamente. Então, eu quero pegar a altura do contêiner e dividi-lo pelo número de linhas (uma constante).
Eu tenho essa função (esse código é parte do formulário no qual o painel chamado dynamicPanel reside):
<code>private static int getControlHeightToUse() { return (dynamicPanel.Height / NUMBER_OF_ROWS); } </code>
... o que me dá o erro em tempo de compilação, "* Uma referência de objeto é necessária para o campo não estático, método ou propriedade RememberNextGen_CRLogins.CRLoginsMainForm.dynamicPanel '*"
Eu não entendo o que está tentando me dizer / o que quer.
Se eu remover o "estático":
<code>private int getControlHeightToUse() { return (dynamicPanel.Height / NUMBER_OF_ROWS); } </code>
... Eu então recebo o erro de tempo de compilação, "* Um inicializador de campo não pode referenciar o campo, método ou propriedade não-estático 'TitanNextGen_CRLogins.CRLoginsMainForm.getControlHeightToUse ()' *"
... na linha indicada abaixo:
<code>public partial class CRLoginsMainForm : Form { int controlHeight = getControlHeightToUse(); // <-- err </code>