111,093
社区成员




private Timer timer;
private void Window_SizeChanged(object sender, SizeChangedEventArgs e)
{
if (timer != null)
timer.Dispose();
timer = new Timer(setSize, e, 200, 200);
}
private void setSize(object eo)
{
SizeChangedEventArgs e = eo as SizeChangedEventArgs;
if (e.WidthChanged)
{
if (e.NewSize.Height != e.NewSize.Width / 2.0)
{
this.Dispatcher.BeginInvoke(new Action(() => { this.Height = e.NewSize.Width / 2.0; }));
}
}
else if (e.HeightChanged)
{
if (e.NewSize.Width != e.NewSize.Height * 2.0)
{
this.Dispatcher.BeginInvoke(new Action(() => { this.Width = e.NewSize.Height * 2.0; }));
}
}
timer.Dispose();
}