在可视树中放置定义为资源的对象

本文关键字:资源 对象 定义 可视 | 更新日期: 2023-09-27 18:04:54

我定义了一个包含如下代码的按钮的资源。

<Window x:Class="WpfApplication1.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window1" Height="313" Width="481">
    <Window.Resources>
        <Button x:Key="btnMy">my button</Button>
    </Window.Resources>
    <!--And now, how can I place 'btnMy' into here?-->
</Window>

并且我喜欢通过XAML编码将控件放入Window1。

在可视树中放置定义为资源的对象

<StaticResource ResourceKey="btnMy"/>

如果你在多个地方使用这个,你会得到一些很好的异常…

Edit:这可能会引起一些人的兴趣,这些异常可以通过在有问题的资源上设置x:Shared为false来避免,这将导致无论在何处引用控件都创建新的控件。