2013-08-13 7 views
-1

я иметь такую ​​форму:формы с другим пространством имен

namespace Robo2013 
{ 
    public partial class frm_principal : Form 
    { 
     public frm_principal() 
     { 
      InitializeComponent(); 
     } 
    } 
} 

Эта форма имеет один TreeView и одну панель, в TreeView шоу форму на панели с этим кодом

private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) 
    { 
     //Grande If, else para selecionar os forms a partir do clique de um node. 
     if (treeView1.SelectedNode.Text == "Grupo") 
     { 
      panelmain.Controls.Clear(); 
      frm_grupo grupo = new frm_grupo(); 
      grupo.TopLevel = false; 
      grupo.AutoScroll = true; 
      panelmain.Controls.Add(grupo); 
      grupo.Show(); 
     } 
    } 

Это отлично работает, но Я хочу назвать другую форму, с панели с помощью кнопки:

namespace Robo2013.Robo_Forms 
{ 
    public partial class Frm_robo_email : Form 
    { 
     public Frm_robo_email() 
     { 
      InitializeComponent(); 
     } 

     private void btn_configuracoes_Click(object sender, EventArgs e) 
     { 
     } 
    } 
} 

Как вызвать форму к панели, если есть NAM с различным ESPACES

+0

Именно то, что проблема у вас есть, чтобы вызвать другую форму? Пожалуйста, покажите нам, что вы пробовали. –

ответ

0

Из документации MSDN:

Пространство имен используется ключевое слово, чтобы объявить объем, который содержит набор связанных объектов. Вы можете использовать пространство имен для упорядочения элементов кода и создавать глобально уникальные типы.

Вам нужно создать экземпляр экземпляра другой формы либо с полным именем пространства имен или относительным пространством имен или путем добавления using директиву в файл # класса C.
Полностью квалифицированные имена:

Robo2013.Robo_Forms.Frm_robo_email emailFrm = new Robo2013.Robo_Forms.Frm_robo_email(); 
emailFrm.Show(); 

Относительное пространство имена:

Robo_Forms.Frm_robo_email emailFrm = new Robo_Forms.Frm_robo_email(); 
emailFrm.Show(); 

using директива:

using Robo2013.Robo_Forms; 

... 

Frm_robo_email emailFrm = new Frm_robo_email(); 
emailFrm.Show(); 

Обратите внимание, что использовать г elative namespace, вам нужно ссылаться на дочернее пространство имен из родительского пространства имен. Родительское пространство имен в этом случае - Robo2013.

Вот больше информации об использовании пространств имен в C#: http://msdn.microsoft.com/en-us/library/dfb3cx8s.aspx

Смежные вопросы