C#, C♯, C#相談室 Part42
■ このスレッドは過去ログ倉庫に格納されています
0563デフォルトの名無しさん
2007/09/13(木) 13:52:16引用先に書いてある通り内部でWindowを再作成してるのが原因だろう。
ディスパッチャーに乗せてスタイルの変更処理を遅延させてみた。
一応動いているがタイミングの問題が残るかもしれない。
delegate void ChangeBorderStyleHandler();
protected override void OnEnter(EventArgs e) {
base.OnEnter(e);
this.BeginInvoke(new ChangeBorderStyleHandler(ChangeBorderStyleFixed3D));
}
protected override void OnLeave(EventArgs e) {
base.OnLeave(e);
this.BeginInvoke(new ChangeBorderStyleHandler(ChangeBorderStyleNone));
}
private void ChangeBorderStyleFixed3D() {
this.BorderStyle = BorderStyle.Fixed3D;
}
private void ChangeBorderStyleNone() {
this.BorderStyle = BorderStyle.None;
}
■ このスレッドは過去ログ倉庫に格納されています