在 XAML 中设置框架元素(在这种情况下为边框)宽度是否会阻止我在运行时更改此值?
我有一个包含边框的网格,边框又包含一些其他控件。我有一个动画,它扩展了网格和边框的宽度和高度,从 0 开始增加值。
然后我在边框上方放置了一个按钮作为调整大小的辅助工具(它是一个无边框窗口)。这是应该重新调整边框大小的代码片段:
private void GridResize_Click(object sender, RoutedEventArgs e)
{
startPoint = this.PointToScreen(Mouse.GetPosition(this));
Mouse.Capture(GridResize);
Resizing = true;
}
private void Window_MouseMove(object sender, MouseEventArgs e)
{
if (Resizing)
{
FrameworkElement border = (FrameworkElement)LibraryBorder;
//an arbitrary value for testing
border.Width += 20;
LibraryBorder.InvalidateVisual();
}
}
初始动画将边框宽度设置为 1500。调试时,两个事件都在注册,Window_MouseMove 正在尝试修改边框宽度。然而,它不会改变值 - 它保持在 1500。我将元素转换为 FrameworkElement,希望这将允许我修改 width 属性。我假设我的 xaml 值以某种方式覆盖了我的代码。关于如何解决这个问题的任何想法。我想在我将所有动画移入代码的路线之前我会问一下,以发现有更好的方法(或者代码方法不会有所作为!!)。
提前感谢您的任何答案