2013-02-26 148 views
0

我試圖從collectorDTO的從數據的列表WPF列表,組合框結合的個人資料,請在下面找到數據綁定到組合框在WPF

List<CollectorDTO> cdlist = new List<CollectorDTO>(); 
      cbProfile.ItemsSource = cdlist; 
      cbProfile.DisplayMemberPath = "Profile"; 
      cbProfile.SelectedValuePath = "Profile"; 

收藏家代碼DTO包含獲取設置以下變量方法

private int _coldataId; 
private string _profile; 
private string _protocol; 
private string _hosttype; 
private string _host; 
private string _uid; 
private string _pwd; 
private string _remdir; 
private string _locdir; 
private string _database; 
private string _audittrail; 
private string _skeleton; 
private string _tmode; 
private string _cmdstr; 
private string _starttime; 
private string _stoptime; 
private int _period; 
private string _addinfo; 

請幫忙綁定數據?

+0

您的列表是否包含項目?記住你應該填充列表之前綁定到控制作爲綁定到空集合簡單地不工作 – Nogard 2013-02-26 15:34:41

+0

而不是List 使用ObservableCollection ,CollectorDTO應impliment INotifyPropertyChanged – makc 2013-02-26 15:59:22

回答

0

您的顯示成員路徑應爲_profile而不是Profile。另外,請確保在設置綁定之前填充了您的列表,因爲您使用的是不是可觀察集合的普通列表(組合框在安裝綁定之後無法知道您向列表添加了什麼內容) 。

+0

OP指定'下面的變量與get set方法'所以它只是私人部分的全部財產。儘管我仍然有機會可以將其命名爲'Profile' – Nogard 2013-02-26 15:24:04

+0

,但我錯過了這個細節。我猜想唯一需要注意的是在綁定設置之前將項目添加到集合中。 – Ameen 2013-02-26 15:39:33

+0

我已經將項目添加到設置中,但只有綁定無法正常工作 – 2013-02-27 10:24:01

0

將您的列表定義更改爲公共屬性。大多數綁定只接受它們:

private List<CollectorDTO> _cdlist; 
public List<CollectorDTO> cdlist 
{ 
    get { return _cdlist; } 
    set { _cdlist = value; } 
} 
+0

他正在代碼隱藏中設置綁定。數據源是公有還是私有應該在這裏無關緊要。 – Ameen 2013-02-26 15:40:26

+0

到目前爲止,他沒有任何財產,只是變量 - 這可能是一個問題 – Nogard 2013-02-26 15:46:20