2012-11-25 3 views
0

나는 엔터티 모델에서 채워진 dataGrid에서 작업하고 있습니다. 편집하는 동안 콤보 상자를 사용하려는 시도로 특정 열에 대해 다음을 가지고 있으며 편집 소스는 CollectionsViewSource입니다.WPF 데이터 바인딩 gridview 문제

 <Grid DataContext="{StaticResource vsLogins}" Grid.Column="1" 
      Margin="16,248,154,31"> 
     <DataGrid AutoGenerateColumns="False" EnableRowVirtualization="True" 
        Height="213" HorizontalAlignment="Left" 
        ItemsSource="{Binding Source={StaticResource vsLogins}}" 
        Name="LoginsDataGrid" 
        RowDetailsVisibilityMode="VisibleWhenSelected" 
        VerticalAlignment="Top" Width="380" 
        Background="{StaticResource lgb}" BorderThickness="2" 
        BorderBrush="#FFFC0303"> 
      <DataGrid.Columns> 
      <DataGridTextColumn x:Name="LoginNameColumn" Binding="{Binding 
            Path=LoginName}" Header="Login Name" 
            Width="200" MinWidth="200" /> 
      <DataGridTextColumn x:Name="PsWrdColumn" 
           Binding="{Binding Path=PsWrd}" 
           Header="Password" Width="130" MinWidth="130" /> 
      <DataGridTemplateColumn x:Name="AccessLevelIdColumn" Header="Id" 
            Width="40" MinWidth="40"> 
       <DataGridTemplateColumn.CellTemplate> 
       <DataTemplate> 
        <TextBlock Text="{Binding Path=AccessLevelId}" /> 
       </DataTemplate> 
       </DataGridTemplateColumn.CellTemplate> 
       <DataGridTemplateColumn.CellEditingTemplate> 
       <DataTemplate> 
        <ComboBox ItemsSource="{Binding Source={StaticResource 
          vsAccessLevels}}" DisplayMemberPath="Description" 
         SelectedValuePath="AccessLevelId" IsEditable="False"/> 
       </DataTemplate> 
       </DataGridTemplateColumn.CellEditingTemplate> 
      </DataGridTemplateColumn> 
      </DataGrid.Columns> 
     </DataGrid> 

약간의 오류가 발생합니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 나는 또한 콤보 박스 주위에 그리드를 놓고 CVS에 dataContent를 설정하려고했다. 아무런 주사위도 없었다. 어떤 도움을 주셔서 감사합니다.

+1

오류 무엇입니까? – ryadavilli

+0

'DataGridComboboxColumn '을 사용하지 않은 이유와 어떤 오류가 발생합니까? –

+0

'System.Windows.StaticResourceExtension'에 값을 제공하면 예외가 발생했습니다. 내 테이블에는 DG 내부에서 액세스 할 수있는 권한을 원했던 다른 테이블과 관련된 필드가 있습니다. 그것이 내가 기본적으로하는 것입니다. – OneFineDay

답변

0
<DataGridComboBoxColumn x:Name="AccessIdColumn" 
         ItemsSource="{Binding Source={StaticResource vsAccessLevels}}" 
         DisplayMemberPath="Description" 
         SelectedValuePath="AccessLevelId" 
         SelectedValueBinding="{Binding Path=AccessLevelId}"/>