2010-07-31 33 views
0

大家好我有一個樹形控件的主窗體,並在每個節點下顯示一組文件。如果我有我的鼠標移到節點i將通過使用下面的代碼顯示錶單加載時的值

private void treeViewACH_NodeMouseHover(object sender, TreeNodeMouseHoverEventArgs e) 
    { 
     string strFile = string.Empty; 
     System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder(); 
     messageBoxCS.AppendFormat(" {0}", e.Node); 
     strFile = messageBoxCS.ToString().Substring(11); 
     strFilePath = Directory.GetCurrentDirectory(); 
     strFilePath = Directory.GetParent(strFilePath).ToString(); 
     strFilePath = Directory.GetParent(strFilePath).ToString(); 
     strFilePath = strFilePath + "\\ACH" + "\\" + strFile; 


     if ((File.Exists(strFilePath))) 
     { 
      StreamReader sr = new StreamReader(strFilePath); 
      StringComparison compareType = StringComparison.InvariantCultureIgnoreCase; 
      string fileName = Path.GetFileNameWithoutExtension(strFilePath); 
      string extension = Path.GetExtension(strFilePath); 
      if (fileName.StartsWith("FileHeader", compareType) 
       && extension.Equals(".txt", compareType)) 
      { 
       string s = sr.ReadToEnd(); 
       StringBuilder sb = new StringBuilder(); 
       //sb.Append("RecordTypeCode\tPriorityCode"); 
       //sb.Append("\n"); 
       //sb.Append("--------------------------------------------------"); 
       //sb.Append("\n"); 
       objFile.ReferenceTypeCode = s.Substring(0, 1); 
       sb.Append(objFile.ReferenceTypeCode); 
       string PriorCode = s.Substring(1, 2); 
       sb.Append(PriorCode); 
       objFile.getValues(sb.ToString()); 
       frmTemp frmtemp = new frmTemp(); 
       frmtemp.Show(); 

      } 
     } 

現在我想將這些值在窗體加載每個文本框閱讀中存在的文本文件中的值。但是,因爲它是一個不同的形式,我不能從業務層

我已經編寫這樣的形式負載

  BL.FileHeader objFile = new FileHeader(); 
     private void frmTemp_Load(object sender, EventArgs e) 
    { 
     textBox1.Text = objFile.ReferenceTypeCode; 
    } 

訪問值,但我無法顯示該值的任何幫助,請..

+0

任何一個請幫我得到了答案。我在這一點被攻擊 – Dotnet 2010-07-31 12:13:44

回答

0

由以下

  frmTemp frmtmp = new frmTemp(strFileHeader); 
      frmtmp.Show(); 

     public frmTemp(string str) 
    { 
     InitializeComponent(); 
     if (str.StartsWith("1")) 
     { 
      this.textBox1.Text = str.Substring(0, 1); 
     } 
     else if (str.StartsWith("5")) 
     { 
      this.textBox1.Text = str.Substring(0, 1); 
      this.textBox2.Text = str.Substring(4, 16); 
     } 
    } 
1

爲您要顯示的每個值添加屬性到您的frmTemp類。在您的NodeMouseHover處理程序中,在創建表單實例之後立即爲這些屬性賦值。然後,在frmTemp_Load處理程序中,將這些屬性的值分配給TextBox控件。

+0

你能否請詳細解釋一個示例代碼 – Dotnet 2010-08-02 07:58:11