2011-08-11 45 views
0

我使用ASP.NET與主頁和會話。我把菜單放在masterpage上。在sucsessfuly登錄後,我保存會話中的變量。C#WinForm菜單條

現在我正在使用Winform。 i相可變
替換會話和主頁。i與晶型

所以succsseuly登錄後,我保存在變量替換insted的會話,並使用菜單條關掉和麪板上。

public partial class Principale : Form 
    static string _ClientId; 
    public static string ClientId 
    { 
     get { return _ClientId; } 
     set { _ClientId = value; } 
    } 


    LeOrdre_BL oOrdre_BL = new LeOrdre_BL(); 
    LeOrdreStatut_Entite_BL oOrdreStat_BL = new LeOrdreStatut_Entite_BL(); 

    public Principale() 
    { 
     InitializeComponent();  
     ClientId = LoginData.Trim().Substring(0, LoginData.Trim().Length - 1); 
     panelControl_Ordre.Hide(); 
     panelControl_Mag.Hide(); 
    } 

    private void ordreToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     panelControl_Ordre.Show(); 
     panelControl_Mag.Hide(); 
     GetDataOrdre();    
    } 

    private void magasinierToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     panelControl_Ordre.Hide(); 
     panelControl_Mag.Show();    
    } 

    public void GetDataOrdre() 
    { 
     try 
     { 

      bindingSource_OdreStatus.DataSource = oOrdreStat_BL.Get_All_OrdreStatut(); 
      STATUT_ORDRE.DataSource = bindingSource_OdreStatus; 
      STATUT_ORDRE.DisplayMember = "LIBELLE"; 
      STATUT_ORDRE.ValueMember = "NO"; 



      bindingSource_Ordre.DataSource = oOrdre_BL.Get_Ordre_BL();    
      dataGridView_ordre.DataSource = bindingSource_Ordre; 
      dataGridView_ordre.DataMember = "OrdreTable"; 

     } 
     catch (Exception excThrown) 
     { 
      lbl_Princ_Err.Text = excThrown.Message; 
     } 
    } 

我是以正確的方式做到這一點或者你有另一種想法來取代Winform中的ASP.NET主頁?

Thanx預先

+0

這工作正常,如果你想保持你的面板在相同的形式,但你確定它不會更好地打開一個新的形式,而不是改變'Principale'的內容嗎? – Otiel

回答

1

您是否嘗試過使用MdiContainer。用戶狀態可以作爲變量存儲在mdi容器的形式中?

+0

Thanx爲您的答覆。 現在我使用MDIContainer。我的新問題是: 1.我怎樣才能將變化從父母傳遞給孩子? 2.如何禁止以相同的名稱打開多個窗口(這意味着在我的MenuStrip中有Ordre,Tarif,Config ...當用戶已經打開Ordre時,當他再次點擊它時不會打開一個新窗口/創建一個新的孩子,但指向已打開的ordre窗口)? Thanx before ... – user609511

+0

當您創建子窗體時,使子窗體的參數...例如在mdi容器中... var customerForm = new CustomerForm(foo,bar); customerForm.Show();有關更多信息,請參閱此文檔... http://msdn.microsoft.com/zh-cn/library/7aw8zc76(v=vs.80).aspx – Dom