WPF - ContentControl 内容作为 DrawingVisual
我可以将 ContentControl 的 Content 属性设置为 DrawingVisual 对象吗?它在文档中说内容可以是任何内容,但我尝试过,当我将控件添加到画布时,什么也没有显示。是否可能,如果可能,您可以发布将内容为 DrawingVisual 的 ContentControl 添加到画布的完整代码吗?
Can I set the Content property of a ContentControl to a DrawingVisual object? It says in the documentation that the content can be anything but I tried and nothing shows up when I add the control to canvas. Is it possible and if it is can you post the full code that adds a ContentControl, whose content is a DrawingVisual, to a canvas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
从技术上讲,是的,可以。然而,这可能不是您想要的。添加到 ContentControl 的 DrawingVisual 将仅显示字符串“System.Windows.Media.DrawingVisual”。网格中的以下代码将轻松演示这一点:
要正确使用 DrawingVisual,您需要将其封装在 FrameworkElement 中。请参阅Microsoft 参考。
因此,以下代码应该可以帮助您完成您想要的事情。
在 C# 方面:
Technically, yes, you can. However, that is probably not what you want. A DrawingVisual added to a ContentControl will simply display the string "System.Windows.Media.DrawingVisual". The following code within a grid will demonstrate this easilly:
To use a DrawingVisual properly, you need to encapsulate it within a FrameworkElement. See the Microsoft Reference.
Thus, the following code should help do what you want.
And on the C# side: