C# windows xp上的DrawToBitmap

C# windows xp上的DrawToBitmap,c#,winforms,.net-4.0,windows-xp,C#,Winforms,.net 4.0,Windows Xp,我有一个显示车辆车牌号的用户控件(它包含背景图像和一些文本框),我使用DrawToBitmap()方法获取此控件的位图并在我的表单上显示位图,它在Windows 7上运行良好,但在Windows XP service pack 3中只绘制背景图像,而不绘制文本框中的文本,我该怎么办 var clt = new ControlLisenceTouch();Bitmap b = new Bitmap(clt.Width, clt.Height); clt.License = License.From

我有一个显示车辆车牌号的用户控件(它包含背景图像和一些文本框),我使用
DrawToBitmap()
方法获取此控件的位图并在我的表单上显示位图,它在Windows 7上运行良好,但在Windows XP service pack 3中只绘制背景图像,而不绘制文本框中的文本,我该怎么办

var clt = new ControlLisenceTouch();Bitmap b = new Bitmap(clt.Width, clt.Height);
clt.License = License.FromCar(someCar);
clt.Invalidate(true);
clt.DrawToBitmap(b, Rectangle.FromLTRB(0, 0, clt.Width, clt.Height));
pictureBox1.Image = b;

这家伙也有同样的问题,虽然答案并不完美,但确实帮了他。这里最大的问题是,如果另一个窗口覆盖了您的控件,那么该窗口也会显示出来。看看我的答案,第三次编辑显示了截屏,并从中裁剪出一个控件

根据

Windows XP sp3完全受支持

这家伙也有同样的问题,虽然答案并不完美,但它确实帮了他。这里最大的问题是,如果另一个窗口覆盖了您的控件,那么该窗口也会显示出来。看看我的答案,第三次编辑显示了截屏,并从中裁剪出一个控件

根据

Windows XP sp3是完全受支持的

在Windows XP中使用它时,我也有一些类似的奇怪行为。不幸的是,我没有找到它的修复程序:(我要对你的用户控件中实际包含RichTextBox的部分负责。是的,该控件不受支持。@HansPassant:不,它只包含TextBox,没有RichTextBox。我有用户控件源代码。我在Windows XP中使用它时也有类似的奇怪行为。不幸的是,我没有找到修复程序:(我将对您的用户控件实际包含RichTextBox一事负责。是的,该控件不受支持。@HansPassant:不,它只包含TextBox,没有RichTextBox。我有用户控件的源代码。