在使用类似
buffer = pcode.ToString()+"---------"+unicode.ToString();
richTextBox1.Lines[iloop] = buffer;
的办法改写每行的数据时没有效果
debug查richtextbox.lines还是原来的值,希望有人能教我怎么解决!另外还想问问如何在新建一个bitmap上绘制字符串!

解决方案 »

  1.   

    richTextBox1.Lines在获取值得时候是新创建的一个数组,直接修改单行richTextBox1.Lines[x]不会改变richTextBox1.Text的内容,但可以通过赋一个数组来实现,正确的方法应该是
    string[] lines = richTextBox1.Lines;
    ......
    lines[iloop] = buffer;
    ......richTextBox1.Lines = lines;
    新建bitmap并绘制字符串:
    Bitmap bit = new Bitmap(30, 30);Font f = new Font("黑体", 24, GraphicsUnit.Pixel);
    Graphics g = Graphics.FromImage(bit);
    GraphicsUnit unit = GraphicsUnit.Pixel;
    g.FillRectangle(Brushes.Red, bit.GetBounds(ref unit));
    System.Diagnostics.Trace.WriteLine(f.Height);
    g.DrawString("黑", f, Brushes.Black, bit.GetBounds(ref unit));
    bit.Save(MapPath("/Images/test.bmp"),System.Drawing.Imaging.ImageFormat.Bmp);
      

  2.   

    另外还想问问如何在新建一个bitmap上绘制字符串!
    在它的onprint事件上重绘.