2016-04-27 7 views
0

Ich muss eine Liste von TextBox-Werten und eine ComboBox mit einigen Feldern deklarieren. Jede ComboBox in jeder Zeile kann 3 oder 4 oder 5 Werte haben, abhängig davon, was ich aus einer Datenbank entnehme. Aber wenn ich die Felder deklariere, sind alle TextBoxen richtig verknüpft, aber die letzte ComboBox ist immer leer. Ich habe die TexBoxen und ihren Code nicht zur besseren Übersicht hinzugefügt. XAML:fügen Sie eine andere ItemsSource für jede Zeile in einer Datagrid-Combobox hinzu

<DataGrid AutoGenerateColumns="False" x:Name="dataGrid" ItemsSource="{Binding Finalize_routing}" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top" Height="249" Width="582"> 
    <DataGrid.Columns> 
     <DataGridComboBoxColumn Header="Stazione" ItemsSource="{Binding Station}" DisplayMemberPath="stazione_id" ></DataGridComboBoxColumn> 
    </DataGrid.Columns> 

Hauptklasse:

Finalize_routing = new ObservableCollection<Stazioni_operazioni>();     
Finalize_routing.Add(new Stazioni_operazioni 
      { 
       Station = new ObservableCollection<Stazioni> { new Stazioni { stazione_id="1"},new Stazioni { stazione_id="2"} } 
      }); 
     } 
     InitializeComponent(); 
     DataContext = this; 

stazioni_operazioni:

private ObservableCollection<Stazioni> station; 
    public ObservableCollection<Stazioni> Station 
    { 
     get { return station; } 
     set 
     { 
      if (station != value) 
      { 
       station = value; 

      } 
     } 
    } 

stazioni:

public class Stazioni{ 
    public string stazione_id { get; set; } 
} 
+0

von myself.i'll bearbeiten Antwort gelöst, wenn ich einige Zeit bekam – frankiehf

Antwort

0

es gibt ein Problem mit der Klasse "stazioni" war, nur knapp sein Ziel Zahl out why.anyway habe ich eine Liste von Strings statt

final_route={"1","2","3"}; 
Finalize_routing.Add(new Stazioni_operazioni 
    { 
    Station = final_route 
}); 

und XAML:

  <DataGridTemplateColumn Header="Stazione" Width="80"> 
       <DataGridTemplateColumn.CellTemplate> 
        <DataTemplate> 
         <ComboBox ItemsSource="{Binding Path=Station,Mode=TwoWay}" /> 
        </DataTemplate> 
       </DataGridTemplateColumn.CellTemplate> 
      </DataGridTemplateColumn> 
Verwandte Themen