2017-06-15 37 views
0

需要在wpf綁定其顯示字符串和值字符串時通過列表綁定組合框。我只能綁定顯示文本,如何將值文本與顯示文本進行綁定?如何通過列表wpf c綁定組合框顯示字符串和值字符串#

List<string> value = new List<string>(); 
value.Add("a"); 
value.Add("b"); 
route_select_points.ItemsSource = value; 

值文本保持隱藏在前端

這裏是樣本數據的例子(更新詳細)

https://i.stack.imgur.com/uEQmQ.png

+0

什麼顯示文本和值文本? –

+0

能否請你發佈你的XAML –

+0

你需要在你的xaml中設置的屬性是'DisplayMemberPath'和'SelectedValuePath',[ItemsControl.DisplayMemberPath Property](https://msdn.microsoft.com/en-us/library/system .windows.controls.itemscontrol.displaymemberpath(v = vs.110).aspx)和[SelectedItem,SelectedValue和SelectedValuePath之間的差異](https://stackoverflow.com/a/4902454/6741868) –

回答

0

它看起來像你需要使用ListView控件與GridView控件,請參閱:

<ListView Name="route_select_points" Margin="5"> 
      <ListView.View> 
        <GridView> 
         <GridView.Columns> 
          <GridViewColumn Header="Value" DisplayMemberBinding="{Binding Path=ValueText}"></GridViewColumn> 
          <GridViewColumn Header="Display" DisplayMemberBinding="{Binding Path=DisplayText}"></GridViewColumn> 
         </GridView.Columns> 
        </GridView> 
      </ListView.View> 
    </ListView> 

而對於綁定你需要與屬性定義你的類:「ValueText」,「DisplayText」一樣,例如我建議

public class SomeData 
{ 
    public string ValueText { get; set; } 
    public string DisplayText { get; set; } 
} 

和列表的創建將是:

var value = new List<SomeData>(); 
value.Add(new SomeData(){ ValueText = "1", DisplayText = "a"}); 
value.Add(new SomeData(){ ValueText = "2", DisplayText = "b"}); 
route_select_points.ItemsSource = value; 
+0

你的答案是好的列表視圖,但我需要將它綁定到組合框。請參閱示例圖像的最新更新,我實際上需要將BackEndData綁定到組合框,在選擇組合框時,值將與顯示文本 –

相關問題