gpt4 book ai didi

wpf - 使用 WPF 用户控件和 MVVM

转载 作者:行者123 更新时间:2023-12-04 14:29:20 25 4
gpt4 key购买 nike

我有以下问题

  • 我的用户控件的使用者应该分配用户控件的 DataContext 还是设置一些依赖属性。 (与#3 相关:如果 DataContext 则我的各个项目需要直接绑定(bind)到 DC 中给出的对象,如果 DP 则我可以绑定(bind)到任何 VM)
  • 如果他们设置属性,并且如果我使用 3 个原始项,我应该接受它们作为单独的属性还是将它们组合到我的用户控件的模型
  • 我是否应该要求我的用户控件的消费者向我发送模型或 View 模型(我说的是 View 模型,但对于我迄今为止使用的所有控件,我从未见过有人要求我向他们发送 VM - 我相信有些人可能会在内部实现 MVVM
  • 最佳答案

    您的消费者需要用户控制。所以我认为用户控件应该能够在任何上下文/应用程序(WPF)中工作。所以,回答你的问题

    1) 消费者应设置在用户控件中定义的依赖属性。通过使用数据上下文,您将用户控件耦合到消费者。

    2)将它们作为单独的原始属性,否则消费者需要创建一个不必要的对象来满足您的模型(再次耦合 - 为什么消费者需要了解您的模型?)。

    3)不,您不应该要求消费者向您发送 View 模型。为什么您需要知道哪个消费者正在使用您的“通用”用户控件。

    如果您出于实际考虑无法执行上述任何操作-那么不要担心违反任何/所有规则,因为您的用户控制与特定上下文相结合-它不再是通用的。如果您编写通用用户控件,则任何 WPF 应用程序都可以使用您的用户控件。这是你的电话。

    关于wpf - 使用 WPF 用户控件和 MVVM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2957328/

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