gpt4 book ai didi

wpf - 有哪些方法可用于 WPF 中的虚拟设计时数据?

转载 作者:行者123 更新时间:2023-12-03 03:33:42 25 4
gpt4 key购买 nike

我在没有表达式混合的情况下工作,仅使用 vs2010 中的 XAML 编辑器。撇开这一点不谈,我越来越发现设计时数据绑定(bind)的需求。对于简单的情况,FallbackValue 属性工作得非常好(文本框和文本 block 等)。但特别是在处理 ItemsControl 等时,确实需要在设计器中显示示例数据,以便您可以调整和调整控件和数据模板,而无需运行可执行文件。

我知道ObjectDataProvider允许绑定(bind)到类型,因此可以提供用于可视化的设计时数据,但是需要一些技巧才能绑定(bind)真实的运行时数据无需通过加载设计时、虚拟数据和运行时绑定(bind)来浪费资源。

我真正想要的是能够让“John”、“Paul”、“George”和“Ringo”在 XAML 设计器中显示为我的 ItemsControl 中的可样式项>,但在应用程序运行时显示真实数据。

我还知道 Blend 允许使用一些奇特的属性来定义设计时绑定(bind)数据,而 WPF 在运行时条件下会有效地忽略这些数据。

所以我的问题是:

<强>1。我如何在 Visual Studio XAML 设计器中利用集合和重要数据的设计时绑定(bind),然后顺利地切换到运行时绑定(bind)?

<强>2。其他人如何解决设计时与运行时数据问题?就我而言,我无法轻松地为两者使用相同的数据(就像可以使用数据库查询一样)。 p>

<强>3。它们是我可以用于数据集成 XAML 设计的表达式混合的替代方案吗?(我知道有一些替代方案,但我特别想要一些可以使用并查看绑定(bind)示例数据等的东西?)

最佳答案

使用VS2010你可以使用Design-Time attributes (适用于 SL 和 WPF)。无论如何,我通常有一个模拟数据源,所以这只是一个问题:

  • 添加命名空间声明

    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  • 将模拟数据上下文添加到窗口/控件资源

    <UserControl.Resources>
    <ViewModels:MockXViewModel x:Key="DesignViewModel"/>
    </UserControl.Resources>
  • 设置设计时数据上下文

    <Grid d:DataContext="{Binding Source={StaticResource DesignViewModel}}" ...

效果很好。

关于wpf - 有哪些方法可用于 WPF 中的虚拟设计时数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1889966/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com