使用LINQ在WPF canvas中删除控件 [英] Delete control in wpf canvas using LINQ
本文介绍了使用LINQ在WPF canvas中删除控件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经在WPF应用程序中动态创建了一个标签.现在,我想按名称从画布中删除该标签.我如何使用LINQ删除它.
I have dynamically created a label in my WPF Application.Now I want to delete the label from canvas by Name. How can i delete it using LINQ.
推荐答案
从UI对象删除中未使用LINQ.请参阅:
http://en.wikipedia.org/wiki/Language_Integrated_Query [ http://msdn.microsoft.com/en-us/library/vstudio/bb397926.aspx [ ^ ].
按名称删除"看起来不准确.您可以通过Name
搜索对象(在这种情况下,这可能是个坏主意),然后从Canvas
实例中删除找到的对象.这是一串MSDN帮助页面,显示了如何执行此操作:
http://msdn.microsoft.com/en-us/library/system. windows.controls.canvas.aspx [ ^ ],
http://msdn.microsoft.com/en-us/library/system.windows.controls.panel.children.aspx [ ^ ],
http://msdn.microsoft.com/en-us/library/system. windows.controls.uielementcollection.aspx [ ^ ],
http://msdn.microsoft.com/en-us/library/system.windows.controls.uielementcollection.remove.aspx [ ^ ],
http://msdn.microsoft.com/en-us/library/system.windows.controls.uielementcollection.removeat.aspx [ ^ ].
(很清楚吗?好吧,就像myCanvas.Children.Delete(myUIElement);
或myCanvas.Children.DeleteAt(myUIElementIndex)
一样.就这么简单.)
—SA
LINQ is not used from deletion of UI objects. Please see:
http://en.wikipedia.org/wiki/Language_Integrated_Query[^],
http://msdn.microsoft.com/en-us/library/vstudio/bb397926.aspx[^].
"Delete by Name" does not look accurate. You can search an object byName
(which is probably a pretty bad idea in this case) and remove the found object from the instance of theCanvas
. This is a chain of MSDN help pages showing how to do it:
http://msdn.microsoft.com/en-us/library/system.windows.controls.canvas.aspx[^],
http://msdn.microsoft.com/en-us/library/system.windows.controls.panel.children.aspx[^],
http://msdn.microsoft.com/en-us/library/system.windows.controls.uielementcollection.aspx[^],
http://msdn.microsoft.com/en-us/library/system.windows.controls.uielementcollection.remove.aspx[^],
http://msdn.microsoft.com/en-us/library/system.windows.controls.uielementcollection.removeat.aspx[^].
(Was that clear? OK, this is something likemyCanvas.Children.Delete(myUIElement);
ormyCanvas.Children.DeleteAt(myUIElementIndex)
. As simple as that.)
—SA
这篇关于使用LINQ在WPF canvas中删除控件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文