Fórum
Ver pergunta

Erro ao abrir um custom form v10.10   

212 visualizações
0
0

Ao criar um custom form com recurso ao seguinte código:

using (var result = BSO.Extensibility.CreateCustomFormInstance(typeof(CustomForms.frmClientesTabelasPreco)))
{
(result.Result as CustomForms.frmClientesTabelasPreco).ShowDialog();
}

obtemos o seguinte erro: “A referência de objecto não foi definida como uma instância de um objecto.”

Alguma solução?

 

Faça login para poder traduzir
V10
Marcado como spam
Criado há 5 anos e 2 meses joofigueiredo
j
joofigueiredo João Figueiredo Iniciante
2 respostas
0
Resposta privada

Depois de muitas cabeçadas com um problema parecido, no meu caso, o Constructor do meu CustomForm tinha um parâmetro (que era o Contexto) e, utilizando o CreateCustomFormInstance, não estava a instanciar o formulário corretamente porque não estava indicar o parâmetro.

Refazendo o Constructor com a retirada do parâmetro, resolveu o problema.

Fica aqui em aberto é como utilizar o CreateCustomFormInstance quando um formulário tem parâmetros no Constructor...

 

Aproveito e deixo aqui também algo que pode ser útil para todos:

 

/// <summary>
/// generic creation of custom form
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="modal"></param>
private void OpenFormInstance<T>(bool modal)
{
using (var instance = Contexto.BSO.Extensibility.CreateCustomFormInstance(typeof(T)))
{
if (instance.IsSuccess())
{
if (modal)
{
(instance.Result).ShowDialog();
}
else
{
(instance.Result).Show();
};
}
}
}

Faça login para poder traduzir
Marcado como spam
Criado há 3 anos e 9 meses ricardorodrigues
r
ricardorodrigues Ricardo Rodrigues Iniciante
    0
    Resposta privada

    @joofigueiredo O que é o CustomForms.frmClientesTabelasPreco?? O teu formulário não será apenas o frmClientesTabelasPreco? Penso ser esse o teu plroblema, apenas tens de indicar p frmclienteTabelaPreco

    Faça login para poder traduzir
    Marcado como spam
    Criado há 5 anos e 2 meses sergiosereno
    sergiosereno sergio sereno Most Valuable Professional