当鼠标进入另一个按钮时如何移动多个按钮

How to shift several buttons when mouse enter over another one

如何在鼠标进入时移动多个按钮

请看这个视图:

现在我要添加的是当 mouse enter 添加 button 按钮上的 运行 按钮将向右移动时,我将看到此视图:

如果可能的话,我希望看到转变不是立即发生,而是大约 200-500 毫秒。

有一种简单的方法可以做到这一点,否则我需要更改 margin ?

也许最好的方法是最简单的方法。

这是一个例子:

<StackPanel Orientation="Horizontal">
    <Button Content="Add" MouseEnter="AddButton_MouseEnter"/>
    <Button Name="btnItem1" Content="Item 1" Margin="3,0,0,0" Visibility="Collapsed"/>
    <Button Name="btnItem2" Content="Item 1" Margin="3,0,0,0" Visibility="Collapsed"/>
    <Button Content="Run" Margin="3,0,0,0"/>
</StackPanel>

这是隐藏代码:

private async void AddButton_MouseEnter(object sender, MouseEventArgs e)
{
    await Task.Delay(200);

    btnItem1.Visibility = System.Windows.Visibility.Visible;
    btnItem2.Visibility = System.Windows.Visibility.Visible;
}