【发布时间】:2010-11-23 23:41:31
【问题描述】:
我有一个网格视图,其中列将其数据绑定到Page_Loaded 中的Datagrid.DataContext:
private void Shema_Loaded(object sender, RoutedEventArgs e)
{
GridName.DataContext = AllPdiLines;
}
我想要一个网格,其中每行中的一个单元格包含一个带有可选值的组合框,然后在选择时绑定到 datagrid 数据源。应该很简单,但是不能为组合框绑定 itemscollection。
xaml 如下所示:
<data:DataGrid x:Name="GridName"
ItemsSource="{Binding}"
AutoGenerateColumns="False"
SelectionMode="Single"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
Margin="4">
<data:DataGrid.Columns>
<data:DataGridTemplateColumn Header="First name">
<data:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox Text="{Binding FirstName,Mode=TwoWay}"/>
</DataTemplate>
</data:DataGridTemplateColumn.CellEditingTemplate>
</data:DataGridTemplateColumn>
<data:DataGridTemplateColumn Header="LastName" CanUserSort="True">
<data:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBox Text="{Binding LastName,Mode=TwoWay}"/>
</DataTemplate>
</data:DataGridTemplateColumn.CellTemplate>
</data:DataGridTemplateColumn>
<data:DataGridTemplateColumn Header="Country">
<data:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<ComboBox x:Name="cbxQ" IsEnabled="True"
SelectedItem="{Binding Country,Mode=TwoWay}"
ItemsSource="{Binding Countries, Source={StaticResource CountryDataSource}}"
ItemTemplate="{StaticResource CountryListTemplate}"/>
</DataTemplate>
</data:DataGridTemplateColumn.CellEditingTemplate>
</data:DataGridTemplateColumn>
</data:DataGrid.Columns>
所以,我为 DataGrid 设置了 DataContext,并且前两列很好地绑定了,但是如何为每行的 ComboBox 中的可选值设置数据源。
问候 Øyvind
【问题讨论】:
-
您使用的是什么版本的 SL?
-
Country 属性的数据类型是什么?
标签: silverlight datagridview combobox datasource