Я возлюсь с настольным гаджетом (часами). Под ним есть эффект отражения, который должен быть прозрачным, и я использую CopyFromScreen, чтобы получить фон, а затем просто устанавливаю фон формы на это.
Примерно так (часть кнопки «закрепить / отменить»):
Rectangle bounds = this.Bounds;
using (Bitmap ss = new Bitmap(bounds.Width, bounds.Height))
using (Graphics g = Graphics.FromImage(ss))
{
this.Opacity = 0;
g.CopyFromScreen(this.Location, Point.Empty, bounds.Size);
ss.Save(@"C:\clock1s\bg", ImageFormat.Png);
this.Opacity = 100;
this.BackgroundImage = new Bitmap(@"C:\clock1s\bg");
g.Dispose();
}
Теперь, когда бы я ни захотел использовать это снова (например, переместить часы), я не могу удалить этот файл или восстановить его, потому что он используется в данный момент. Я уже пытался настроить форму BG на что-то другое, но это не сработало.
Как мне идти?
РЕДАКТИРОВАТЬ: Сортировка, спасибо (Лэнс Макнирни).
А что если у есть , чтобы сохранить его в файл?
Также бонусный вопрос:
проклятый батвот http://upload.snelhest.org/images/100219batwatch.jpg
Выбор и значки, заканчивающиеся под формой, являются небольшим раздражением, и, если возможно, я бы хотел, чтобы они заканчивались сверху или снизу (сохраняя плавное сглаживание). Я предполагаю, что это выход из моего запаса, чтобы исправить все же.