2014-07-15 212 views
-1

將十六進制數據顯示到richtext框中的代碼,所以現在問題是當我調整窗口大小時,richtextbox中的數據應該更改爲 。當我們調整窗口中窗口內容的大小時應該修改

  int length = (int)fileInfo.Length; 
      FileStream fileStream = new FileStream(fileInfo.Name, FileMode.Open, FileAccess.Read); 
      fileStream.Read(buffer, 0, length); 


      string bb = ""; 
      int i = 0; 
      //int numBytesToRead = buffer.Length; ; 
      while (i < buffer.Length) 
      { 
       if ((i % 16) == 0) 
       { 
        bb = bb + "\n"; 
        bb = bb + i.ToString("X8"); 
        bb = bb + "\t"; 
       } 
       else if ((i % 4) == 0) 
       { 
        bb = bb + "\t"; 
       } 
       bb = bb + buffer[i].ToString("X2"); // modified on 30june2014 
       // if ((i % 4) == 0) 
       // { 
       //  
       // } 
       i = i + 1; 
      } 
      richTextBox2.Text = bb; 

}

回答

0

您可以使用表格的大小改變的事件如下:

private void Form1_SizeChanged(object sender, EventArgs e) 
{ 
    richTextBox2.Text=bb;//or what you want 
} 

看一看這個MSDN

因爲你懶搜索如何做到這一點:

轉到窗體的屬性窗口,然後單擊下面的事件圖標

Form Properties

,然後雙擊在SizeChanged將。然後你可以編寫這個方法。

+0

實際上需要調整大小將手動完成,所以當我或客戶調整窗體的內容應該改變,但以良好的方式對齊 – rocky

+0

你寫了一個問題「當我調整窗口的大小時,richtextbox中的數據應該是改變」。那麼你的意思是手動完成呢? –

+0

是的,其實richtextbox在這裏顯示十六進制數據,所以當調整大小時,數據應該系統地對齊 – rocky