我需要声明一个TextBox值列表和一个包含一些字段的ComboBox。每行中的每个ComboBox可能有3或4或5个值,具体取决于我从数据库中提取的内容。但是当我声明字段时,所有TextBox都正确绑定,但最后一个ComboBox始终为空。为清楚起见,我没有添加TexBoxes及其代码。 XAML:
<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>
主要课程:
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;
}
}
}
齐奥尼:
public class Stazioni{
public string stazione_id { get; set; }
}
答案 0 :(得分:0)
班级“stazioni”有一些问题,没有找出原因。但是我使用了一个字符串列表而不是
final_route={"1","2","3"};
Finalize_routing.Add(new Stazioni_operazioni
{
Station = final_route
});
和xaml:
<DataGridTemplateColumn Header="Stazione" Width="80">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{Binding Path=Station,Mode=TwoWay}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>