2012-01-23 5 views
2

私はWPFアプリケーションを作成しています。チェックボックスを含む列ヘッダーを持つDataGridがあります。私はこのチェックボックスをチェック/アンチェック - すべての機能に使用します。 Win7でアプリケーションを実行すると正常に見えますが、XPではチェックボックスが変わって圧縮され、クリックされたときにチェックされません。どんなフィードバックも大きく訴えるでしょう。XPとWin7のWPFアプリケーションのチェックボックスの幅はどうやって違いますか?

影響を受けるコード:

<Grid> 
    <DataGrid RowDetailsVisibilityMode="VisibleWhenSelected" SelectionMode="Extended" SelectionUnit="Cell" AutoGenerateColumns="False" IsReadOnly="False" CanUserSortColumns="False" CanUserResizeRows="False" CanUserAddRows="False" CanUserDeleteRows="False" Height="Auto" Margin="10,10,10,10" Name="dgSurveyGroups" VerticalAlignment="Top" RowHeight="26" AlternatingRowBackground="Gainsboro" RowHeaderWidth="0" HorizontalAlignment="Left" Width="346"> 
     <DataGrid.Columns> 
      <DataGridTextColumn Binding="{Binding description, Mode=OneWay}" Header="Surveygroup" Width="*"/> 
      <DataGridCheckBoxColumn Binding="{Binding Active}" Header="" Width="24"> 
       <DataGridCheckBoxColumn.HeaderTemplate> 
        <DataTemplate> 
         <CheckBox Name="SuperCheckBox"/> 
        </DataTemplate> 
       </DataGridCheckBoxColumn.HeaderTemplate> 
      </DataGridCheckBoxColumn> 
      <DataGridTemplateColumn Header="Start Date" Width="110"> 
       <DataGridTemplateColumn.CellTemplate> 
        <DataTemplate> 
         <TextBlock Text="{Binding startDate, StringFormat=d}"/> 
        </DataTemplate> 
       </DataGridTemplateColumn.CellTemplate> 
       <DataGridTemplateColumn.CellEditingTemplate> 
        <DataTemplate> 
         <DatePicker SelectedDate="{Binding startDate}"/> 
        </DataTemplate> 
       </DataGridTemplateColumn.CellEditingTemplate> 
      </DataGridTemplateColumn> 
      <DataGridTemplateColumn Header="End Date" Width="110"> 
       <DataGridTemplateColumn.CellTemplate> 
        <DataTemplate> 
         <TextBlock Text="{Binding endDate, StringFormat=d}"/> 
        </DataTemplate> 
       </DataGridTemplateColumn.CellTemplate> 
       <DataGridTemplateColumn.CellEditingTemplate> 
        <DataTemplate> 
         <DatePicker SelectedDate="{Binding endDate}"/> 
        </DataTemplate> 
       </DataGridTemplateColumn.CellEditingTemplate> 
      </DataGridTemplateColumn> 
     </DataGrid.Columns> 
    </DataGrid> 
</Grid> 

Win7の:
enter image description here

のWinXP:
enter image description here

答えて

3

あなたはXPで、Windows Vistaの/ 7のAeroテーマを使用するようにWPFを強制することができます。 WPFは、ベクターグラフィックスを使用して、すべてのシステムグラフィック機能を独自に再インプリメントしているという、楽しい意味合いの1つです。

How to do that

ただし、アプリケーションはWindows XP(すべてのモダンなガラスボタンなど)で少し外れて見えることに注意してください。

+0

これは完全に機能しました。 – ahdaniels

関連する問題