当我在运行时更改我的画布宽度时,我可以在我的画布宽度发生变化时获得一个事件吗?
改变我在运行时槽的宽度:
myCanvas.width = myCanvas.width + 1;
有没有这样的事件:
private void CanvasWidthChanged(object sender, WidthChangedEventArgs e)
{
}
使用 SizeChanged 事件。
myCanvas.SizeChanged += myCanvas_SizeChanged;
private void myCanvas_SizeChanged(object sender, SizeChangedEventArgs e)
{
}
您应该能够使用SizeChanged事件。
事件 args 中有一个WidthChanged属性,您可以使用它来查看宽度是否发生了变化。
您可以创建自己的从 Canvas 继承的类,并在此类中更改大小。就像是
public class DXFCanvas : Canvas
{
protected override void OnRenderSizeChanged(SizeChangedInfo sizeInfo)
{
base.OnRenderSizeChanged(sizeInfo);
// Your action ...
// (SizeChangedInfo contains old and new size)
}
}