wpf中让控件进行移动的动画
答案:3 悬赏:60 手机版
解决时间 2021-12-21 22:05
- 提问者网友:战魂
- 2021-12-20 21:51
按下button后,让一个border的位置进行动画宽度与高度的动画已经会了,但是移动的动画不知道怎么做如让border的left从100到200注:需要C#代码
最佳答案
- 五星知识达人网友:污到你湿
- 2022-01-05 21:59
Border 自身没有 Left 属性, 要描述一个 border 相对于它父窗口(Parent container) 的偏移量, 可以通过其 Margin 属性描述(Margin 是 一个 Thickness 类型的变量), 或通过父容器的附加属性来描述(例如 Canvas.left).
并非所有父容器都提供位置偏移支持, 因此, 使用 margin 来表示其位置偏移是比较好的, 下面是一个例子 (保存为一份 xaml 文档, 在 ie 中打开即可, 例子中, 单击按钮产生 上偏移的动画, 点击铵钮右键产生左偏移动画):
当然, 如果父容器提供了位置偏移的附加属性, 也可以利用(如 Canvas 提供了 Left, Top 等来描述其子元素的位置偏移), 下面也是一个例子(保存为 xaml 文档, 在 ie 中打开也可以了, 例子中, 单击按钮产生 上偏移的动画, 点击铵钮右键产生左偏移动画):
-------------
至于另一个需求 --- 需要 C# 代码, 其实也不难实现, 设置 Margin 的话, 直接就是 bdr.Margin=new Thickness(......)
设置 Canvas.Left 附加属性的就是 bdr.SetValue(Canvas.LeftProperty, yourNewValue);
适当将 xaml 的内容转换为 C# 就可以了
并非所有父容器都提供位置偏移支持, 因此, 使用 margin 来表示其位置偏移是比较好的, 下面是一个例子 (保存为一份 xaml 文档, 在 ie 中打开即可, 例子中, 单击按钮产生 上偏移的动画, 点击铵钮右键产生左偏移动画):
当然, 如果父容器提供了位置偏移的附加属性, 也可以利用(如 Canvas 提供了 Left, Top 等来描述其子元素的位置偏移), 下面也是一个例子(保存为 xaml 文档, 在 ie 中打开也可以了, 例子中, 单击按钮产生 上偏移的动画, 点击铵钮右键产生左偏移动画):
-------------
至于另一个需求 --- 需要 C# 代码, 其实也不难实现, 设置 Margin 的话, 直接就是 bdr.Margin=new Thickness(......)
设置 Canvas.Left 附加属性的就是 bdr.SetValue(Canvas.LeftProperty, yourNewValue);
适当将 xaml 的内容转换为 C# 就可以了
全部回答
- 1楼网友:一秋
- 2022-01-05 23:40
WPF的控件分几种,要根据情况来删除。
如果是Border中的控件要被删除,需要将Border.Child设置为null——因为Border这类控件内部只能容纳一个内嵌控件。
而如果是Grid/StackPanel/DockPanel/Canvas等面板,因为这类控件内部可以同时嵌入多个子级控件,因此,要删除其中的子级控件得用类似Grid.Children.RemoveAt()或RemoveAt()这类的办法。
而TabControl之类的Item容器则需要调用类似tabControl.Items.Remove()或RemoveAt()之类的方法才能删除一个Tab页。
================================
——总之,要删除某个控件,需要先看看它在什么样的容器控件中,然后调用相应的方法。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯