2014-03-24 86 views
0

我用事件來命令這裏explaind:http://nerobrain.blogspot.nl/2012/01/wpf-events-to-command.htmlWPF事件到命令添加到控制從代碼隱藏

我現在嘗試從代碼隱藏添加控件,因爲我有動態添加它們依賴於從數據庫中的數據。 如何執行以下相同的事情,但從代碼隱藏

如何在代碼隱藏中添加「本地」部分?

更新:

這是我試圖解決這個問題,我會盡力summerizes我不久:)

假設用戶的應用程序在使用後留下的反饋信息。
反饋信息可以由多個問題,這可以是

  • 單選
  • 選擇題。

所以一個FeedbackSet可以有幾個FeedbackGroups其可以具有單一選擇FeedbackCodes或多個選擇FeedbackCodes或具有FeedbackGroups/FeedbackCodes的子組

  • 單個選擇將導致在組合框
  • 一種多選擇將導致在列表框
  • 一個子組將產生一個TreeView

模型(shortend代碼):

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事件綁定到相同的命令。
該死的很難解釋:)

+0

請勿在WPF中的過程代碼中創建或操作UI元素。這就是XAML的用途。如果你需要一個基於項目的UI,你應該使用'ItemsControl'。 –

回答

0

你可以在你添加你在XAML代碼中提到的「本地」部分的地方實現你自己的自定義控件。

然後,您將創建這些控件的新實例,而不是來自後面代碼的默認實例。