2011-09-15 24 views
0

私はここでかなりシンプルなものがないと思っていますが、Datagridを正しく表示することができません。DataGridが表示されない、ListViewは正常に動作しますか?

元々、ListViewを使用して表形式のデータを表示していましたが、列を自動サイズ設定したいので、DataGridTextColumnsを使用してDataGridに切り替えました。正しい行数がグリッドに表示されますが、各セルは空白に見えます。何か案は?ここで

は私のXAMLです:

<DataGrid ItemsSource="{Binding Charges}" AutoGenerateColumns="True"> 
    <DataGrid.Columns> 
     <DataGridTextColumn Header="Count" Binding="{Binding Count, Mode=OneWay}" Width="SizeToCells" /> 
     <DataGridTextColumn Header="Charge" Binding="{Binding LawId, Mode=OneWay, Converter={StaticResource LawConverter}}" Width="SizeToCells" /> 
     <DataGridTextColumn Header="Incident Date" Binding="{Binding IncidentDate, Mode=OneWay, Converter={StaticResource DateConverter}}" Width="SizeToCells" /> 
     <DataGridCheckBoxColumn Header="Convicted" Binding="{Binding IsConvicted, Mode=OneWay}" /> 
     <DataGridTextColumn Header="Disposition" Binding="{Binding ChargeDispositionCodeId, Mode=OneWay, Converter={StaticResource CodeConverter}, ConverterParameter='ChargeDispositionCode'}" Width="SizeToCells" /> 
     <DataGridTextColumn Header="Disposition Date" Binding="{Binding DispositionDate, Mode=OneWay, Converter={StaticResource DateConverter}}" Width="SizeToCells" /> 
    </DataGrid.Columns> 
</DataGrid> 

ADDITIONAL INFO:
このXAMLが正しく動作して表示を行いますが、私は自動サイズ調整するので、DataGridのが望ましいだろう列が欲しい:

<ListView ItemsSource="{Binding Charges}"> 
    <ListView.View> 
     <GridView> 
      <GridViewColumn Header="Count" DisplayMemberBinding="{Binding Count, Mode=OneWay}" /> 
      <GridViewColumn Header="Charge" DisplayMemberBinding="{Binding LawId, Mode=OneWay, Converter={StaticResource LawConverter}}" /> 
      <GridViewColumn Header="Incident Date" DisplayMemberBinding="{Binding IncidentDate, Mode=OneWay, Converter={StaticResource DateConverter}}" /> 
      <GridViewColumn Header="Convicted" DisplayMemberBinding="{Binding IsConvicted, Mode=OneWay}" /> 
      <GridViewColumn Header="Disposition" DisplayMemberBinding="{Binding ChargeDispositionCodeId, Mode=OneWay, Converter={StaticResource CodeConverter}, ConverterParameter='ChargeDispositionCode'}" /> 
      <GridViewColumn Header="Disposition Date" DisplayMemberBinding="{Binding DispositionDate, Mode=OneWay, Converter={StaticResource DateConverter}}" /> 
     </GridView> 
    </ListView.View> 
</ListView> 
+0

手動で列を指定する場合は、AutoGenerateColumnsをオフにする必要があると思われます。 – Ray

+0

コピー&ペーストのストライク。それは私がそれを働かせようとするために混乱していたものでした。今はオフになっていますが、違いはありません。 –

+0

私が考え得る唯一のことは、セルのテキストが '前景'と同じ '背景'を持つということです。セルの編集モードに入ると、まだ空に見えますか? –

答えて

0

グリッドが初期化されているときに出力デバッガーウィンドウをチェックします。 Bindingエラーメッセージが表示されますか?

また、XAMLの列を明示的に定義しているため、「AutoGenerateColumns」をオフにする必要があります。

関連する問題