在代码隐藏中创建设计数据上下文

发布于 2025-01-06 11:48:52 字数 468 浏览 1 评论 0原文

我正在努力提高 Blend 中的设计时体验。

我知道我可以做类似的事情:

d:DataContext="{d:DesignInstance local:vm_d, IsDesignTimeCreatable=True}"

并且 Blend/vs 将在设计时显示我对 vm_d 的绑定,但这似乎有些限制(即使用 DI、泛型时,更不用说我必须通过以下方式编辑 XAML 对我来说似乎很奇怪)手“改善我的设计时体验”)。

我宁愿在后面的代码中做这样的事情:

public SimpleLoad()
    {
        InitializeComponent();
        DataContext = new vm_d();
    }

我假设一个问题是我需要设置 IsDesignTimeCreatable?无论如何,有人知道我如何实现这个吗?

I'm trying to improve on my design time experience in Blend.

I know I can do something like:

d:DataContext="{d:DesignInstance local:vm_d, IsDesignTimeCreatable=True}"

and blend/vs will show my bindings to vm_d at design time, however this seems somewhat limited (i.e. when using DI, generics, not to mention it seems odd to me that I have to edit XAML by hand to "improve my design time experience").

What I'd rather do is something like this in the code behind:

public SimpleLoad()
    {
        InitializeComponent();
        DataContext = new vm_d();
    }

I assume one problem is I need to set IsDesignTimeCreatable? In any case does anyone have an idea how I could implement this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

夏末的微笑 2025-01-13 11:48:52

在构造函数(或 PageLoaded 处理程序)中沿着这些行添加一些内容:

        if (DesignerProperties.IsInDesignTool)
        {
            SimpleLoad();
        }

Add something allong these lines in the constructor (or PageLoaded handler):

        if (DesignerProperties.IsInDesignTool)
        {
            SimpleLoad();
        }
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文