Есть ли способ создать тень для формы без полей, которая не мерцает при изменении размера формы? Сейчас я использую CreateParams.
protected override CreateParams CreateParams
{
get
{
const int CS_DROPSHADOW = 0x20000;
CreateParams cp = base.CreateParams;
cp.ClassStyle |= CS_DROPSHADOW;
return cp;
}
}
Но когда размер формы изменяется, теневая часть становится белой, а затем снова становится тенью, мерцающей. Остальная часть формы - нет, потому что я использовал this.DoubleBuffered = true;
Любая помощь приветствуется, спасибо!
Изменить:
Я изменяю размер формы с помощью SendMessage
private const int WM_NCLBUTTONDOWN = 0xa1;
SendMessage(handle, WM_NCLBUTTONDOWN, dir, 0);
dir
- это целое число, которое меняется в зависимости от направления, в котором я хочу изменить размер формы.
Is there a way to create a shadow for a borderless form that doesn't flicker when the form is resized?
- да, это называется WPF. - person Federico Berasategui   schedule 27.11.2013the shadow part turns white, then back to a shadow
? Когда это случится? Я имею в виду, происходит ли это всякий раз, когда вы изменяете размер каких-либо границ (слева, сверху, справа, снизу) или только сверху и слева (тогда мерцающий край внизу и справа соответственно). Я пробовал код изменения размера, и похоже, что это единственная проблема (изменение размера верхнего и левого края может вызвать небольшое мерцание на противоположном крае) - person King King   schedule 27.11.2013