2014-07-15 218 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