MDIPARENT NO C#
Por favor PessoALL,
Estou tentando converter código VB.Net para C#.Net:
==============================================
Meu código VB.Net que funciona normalmente:
==============================================
==============================================
Conversão para C#:
==============================================
==============================================
O problema é que quando passa por esta linha: [Ô]formAbrir.MdiParent = formMDI;[Ô] dá o seguinte erro:
- [Ô]Form cannot be both an MDI child and MDI parent. Parameter name: value[Ô]
Eu só quero criar uma função que ficará na camada BLL para que o [Ô]formAbrir[Ô] abra dentro do [Ô]formMDI[Ô].
Obrigado,
Tunusat.
Estou tentando converter código VB.Net para C#.Net:
==============================================
Meu código VB.Net que funciona normalmente:
==============================================
[ô][ô][ô] <summary>
[ô][ô][ô] Função para atrelar o mdiChild em um MDI
[ô][ô][ô] </summary>
[ô][ô][ô] <param name=[Ô]formMDI[Ô]>Nome do Formulário MDI</param>
[ô][ô][ô] <param name=[Ô]formAbrir[Ô]>Nome do Formulário mdi Child</param>
[ô][ô][ô] <param name=[Ô]pFormWindowState[Ô]>Abrir em que estado?</param>
[ô][ô][ô] <param name=[Ô]Parent[Ô]>Define se é Parent ou Não.</param>
[ô][ô][ô] <remarks></remarks>
Public Shared Sub AbrirFormulario(ByVal formMDI As Form, ByVal formAbrir As Form, ByVal pFormWindowState As FormWindowState, ByVal pFormStartPosition As FormStartPosition, ByVal Parent As Boolean)
If Parent Then formAbrir.MdiParent = formMDI
formAbrir.StartPosition = pFormStartPosition
formAbrir.WindowState = FormWindowState.Minimized [ô]Não sei pq, mas precisa passar antes pelo estado de minimizado ou normal caso queira maximizar corretamente.
formAbrir.WindowState = pFormWindowState
formAbrir.Show()
formAbrir.Activate()
End Sub
==============================================
Conversão para C#:
==============================================
/// <summary>
/// Função para atrelar o mdiChild em um MDI
/// </summary>
/// <param name=[Ô]formMDI[Ô]>Nome do Formulário MDI</param>
/// <param name=[Ô]formAbrir[Ô]>Nome do Formulário mdi Child</param>
/// <param name=[Ô]pFormWindowState[Ô]>Abrir em que estado?</param>
/// <param name=[Ô]Parent[Ô]>Define se é Parent ou Não.</param>
public static void AbrirFormulario(Form formMDI, Form formAbrir, FormWindowState pFormWindowState, FormStartPosition pFormStartPosition, bool Parent)
{
if (Parent) { formAbrir.MdiParent = formMDI; }
formAbrir.StartPosition = pFormStartPosition;
formAbrir.WindowState = FormWindowState.Minimized;
// Não sei pq, mas precisa passar antes pelo estado de minimizado ou normal caso queira maximizar corretamente.
formAbrir.WindowState = pFormWindowState;
formAbrir.Show();
formAbrir.Activate();
}
==============================================
O problema é que quando passa por esta linha: [Ô]formAbrir.MdiParent = formMDI;[Ô] dá o seguinte erro:
- [Ô]Form cannot be both an MDI child and MDI parent. Parameter name: value[Ô]
Eu só quero criar uma função que ficará na camada BLL para que o [Ô]formAbrir[Ô] abra dentro do [Ô]formMDI[Ô].
Obrigado,
Tunusat.
Não parece estar tão dificil ...
Você verificou se o form pai (o tal do formMDI) está com a propriedade IsMdiContainer como true ??
Com essa propriedade true basicamente você está dizendo ao formulário que ele pode atuar como pai de forms filhos dentro dele.
Abraços
Esley
Você verificou se o form pai (o tal do formMDI) está com a propriedade IsMdiContainer como true ??
Com essa propriedade true basicamente você está dizendo ao formulário que ele pode atuar como pai de forms filhos dentro dele.

Abraços
Esley
Tópico encerrado , respostas não são mais permitidas