2017-01-08 75 views
0

在我的程序中,我將值存儲在列表中。我需要從一個組合框中返回這些值中的兩個。我在互聯網上搜索,但無法找到答案。請給我一些提示。 這裏是我的代碼:從組合框中返回兩個值

價值觀列表:

public class ActualCurrencyBoxData 
{ 
    public string displayValue { get; private set; } 
    public decimal currencyCourse { get; set; }  
    public int currencyConverter { get; set; } 

    public ActualCurrencyBoxData(string ncurrencyName, string ncurrencyCode, decimal ncurrencyCourse, int ncurrencyConverter) 
    { 
     displayValue = ncurrencyName +" (" +ncurrencyCode+ ")"; 
     currencyCourse = ncurrencyCourse;   
     currencyConverter = ncurrencyConverter;   
    } 

} 

我只能返回一個值(actualCurrencyCourse,我還需要currencyConverter):

List<ActualCurrencyBoxData> checkBoxVal = new List<ActualCurrencyBoxData>(); 

public void CurrencyBoxLoad(object sender, RoutedEventArgs e) 
{ 
    var comboBox = sender as ComboBox; 
    comboBox.ItemsSource = checkBoxVal; 
    comboBox.DisplayMemberPath = "displayValue"; 
    comboBox.SelectedValuePath = "currencyCourse";         
} 

private void Count_Click(object sender, RoutedEventArgs e) 
{  
    actualCurrencyCourse = ActualCurrencyBox.SelectedValue.ToString()); 
} 
+0

有一個廁所k at http://wpftoolkit.codeplex.com/wikipage?title=CheckComboBox&referringTitle=Home – Fruchtzwerg

回答

2

可以使用SelectedItem財產,而不是獲得選定的項目的對象:

private void Count_Click(object sender, RoutedEventArgs e) 
{  
    actualCurrencyCourse = ((ActualCurrencyBoxData)ActualCurrencyBox.SelectedItem).currencyCourse; 
    actualCurrencyConverter = ((ActualCurrencyBoxData)ActualCurrencyBox.SelectedItem).currencyConverter; 
} 
+0

謝謝你的回覆,我試過這個,得到這個錯誤:ActualCurrencyBoxData'沒有包含'CurrencyConverter'的定義,也沒有擴展方法' CurrencyConverter'接受類型'ActualCurrencyBoxData'的第一個參數可以找到(你是否缺少using指令或程序集引用?) –

+0

woops,看起來像我誤解了你的屬性名稱的外殼。我通常使用上層駱駝案例(又名Pascal案例)來處理類屬性。習慣很難打破:)修正外殼(就像我在第一篇文章中所做的那樣)以匹配你的套子。另外,如果你有興趣:http://wiki.c2.com/?PascalCase – ryancdotnet

+0

哦,我不能相信我錯過了它。它的工作,謝謝你,我會看看它。 –