gpt4 book ai didi

wpf - 弹出控件随父控件移动

转载 作者:行者123 更新时间:2023-12-04 01:35:37 24 4
gpt4 key购买 nike

希望这对您这里的 WPF 专家来说是一个快速的选择。是否有任何简单的 XAML 解决方案可以让我的弹出窗口在寡妇移动或更改大小时移动?代码如下。如果没有,我总是可以在后面的代码中处理事件。

<Grid>
<Canvas>
<Expander Header="details" HorizontalAlignment="Center" VerticalAlignment="Top" ExpandDirection="Down"
Expanded="Expander_Expanded" Panel.ZIndex="99" Collapsed="Expander_Collapsed" Name="expander">

<Popup PopupAnimation="Slide" Name="popup" Width="200" Height="200" StaysOpen="True" AllowsTransparency="True"
IsOpen="False" >
<Grid Background="Cornsilk">
<Grid.BitmapEffect>
<DropShadowBitmapEffect/>
</Grid.BitmapEffect>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBlock TextWrapping="Wrap" FontWeight="Bold">
Some example text
</TextBlock>
</Grid>
</Popup>

</Expander>
</Canvas>
</Grid>

最佳答案

这几乎是 Rick 的答案,但在代码隐藏中,因为我认为绝对没有理由引入另一个依赖项。

protected override void OnLocationChanged(EventArgs e)
{
popup.HorizontalOffset += 1;
popup.HorizontalOffset -= 1;
base.OnLocationChanged(e);
}

只需复制并粘贴到窗口的代码隐藏并替换 popup标识符与您的弹出实例的标识符之一。

我发现它好多了,它更简洁,它不使用您必须取消订阅或内存泄漏的事件。
并且对于您的应用程序的运行时,覆盖将具有更好的性能(除了微观性能非理性主义者,例如您真正的那样,没有什么值得注意的,仍然会喜欢它)。

关于wpf - 弹出控件随父控件移动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5736359/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com