【问题标题】:WPF Event to Command add to control from CodebehindWPF Event to Command 添加到来自 Codebehind 的控制
【发布时间】:2014-03-24 10:43:17
【问题描述】:

我在这里使用事件来命令解释:http://nerobrain.blogspot.nl/2012/01/wpf-events-to-command.html

我现在尝试从代码隐藏中添加控件,因为我必须根据 db 中的数据动态添加它们。 如何从代码隐藏执行与以下相同的操作

如何在代码隐藏中添加“本地”部分?

更新:

这是我要解决的问题,我会尽快总结一下:)

用户应该在使用应用程序后留下反馈。
反馈信息可以包含多个问题,可以是

  • 单选
  • 多选。

所以一个反馈集可以有多个反馈组,这些反馈组可以有单选反馈码或多选反馈码,或者有反馈组/反馈码的子组

  • 单选将产生一个组合框
  • 多项选择将产生一个列表框
  • 子组将生成 TreeView

型号(简称):

public class FeedbackSet
{
    public int Id{get;set;}
    public string Name{get;set}
    public List<FeedbackGroup> Groups{get;set;}
}    

public class FeedbackGroup
{
    public int Id{get;set;}
    public string Name{get;set;}
    public FeedbackGroupType Type
    public List<FeedbackGroup> Groups{get;set;}
    public List<FeedbackCode> Codes{get;set;}
}

public class FeedbackCode
{
    public int Id{get;set;}
    public string Name{get;set}
}

public enum FeedbackGroupType
{
    SUBGROUP, 
    SINGLE_CHOICE,
    MULTI_CHOICE
}     

所以它可以是不同数量和类型的控件,它基于 FeedbackSet 的组成。 我想获取每个选定的 FeedbackCode 的 Id,因此我试图将 selecteditem 事件绑定到不同控件上以绑定到同一命令。
该死的,这很难解释:)

【问题讨论】:

  • 不要在 WPF 的过程代码中创建或操作 UI 元素。这就是 XAML 的用途。如果您需要基于项目的 UI,您应该使用 ItemsControl

标签: c# wpf mvvm eventtocommand


【解决方案1】:

您可以实现自己的自定义控件,在其中添加您在 XAML 代码中提到的“本地”部分。

然后,您将创建这些控件的新实例,而不是从后面的代码中创建默认实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-15
    • 2010-11-12
    • 1970-01-01
    • 2011-12-02
    • 1970-01-01
    • 2010-10-03
    相关资源
    最近更新 更多