发现了一个奇怪的问题。以下代码只对ListBox中的第一个Items正常。
FrameworkElement element = listBoxItem;
RenderTargetBitmap bmp = new RenderTargetBitmap(
(int)(element.ActualWidth + element.Margin.Left + element.Margin.Right),
(int)(element.ActualHeight + element.Margin.Top + element.Margin.Bottom),
1 / 96, 1 / 96, PixelFormats.Default);
bmp.Render(element);
bitmap = bmp;
目前的方案是不要对ListBoxItem抓图,而是对Item的第一个Child抓图。
第一句改为:
FrameworkElement element = VisualTreeHelper.GetChild(listBoxItem,0) as FrameworkElement;
这个问题很奇怪。不过如果用VisualBrush不存在这个问题。
今天去西安旅游,周一回来,周二这个问题再跟进一下。

浙公网安备 33010602011771号