2015-08-29 45 views
0

我想设计我的WPF窗口的布局来添加一些代码列表项,我需要使用DatePicker,但日历按钮在文本框中不可见。Datepicker按钮不出现

这是我的网格:

<Grid> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="35"></RowDefinition> 
      <RowDefinition Height="35"></RowDefinition> 
      <RowDefinition Height="*"></RowDefinition> 
     </Grid.RowDefinitions> 

     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="auto"></ColumnDefinition> 
      <ColumnDefinition Width="*"></ColumnDefinition> 
      <ColumnDefinition Width="auto"></ColumnDefinition> 
      <ColumnDefinition Width="*"></ColumnDefinition> 
     </Grid.ColumnDefinitions> 

     <Label Content="Code" Grid.Column="0" Grid.Row="0" /> 
     <TextBox Text="{Binding Path=Code}" Grid.Column="1" Grid.Row="0" MinWidth="160" MaxLength="30" MaxWidth="160" /> 

     <Label Content="Description" Grid.Column="0" Grid.Row="1" /> 
     <TextBox Text="{Binding Path=Description}" Grid.Column="1" Grid.Row="1" MinWidth="160" MaxLength="120" MaxWidth="160" /> 

     <Label Content="Valid from" Grid.Column="2" Grid.Row="0" /> 
     <DatePicker Name="dpValidFrom" VerticalAlignment="Top" Grid.Column="3" Grid.Row="0" /> 

     <Label Content="Valid to" Grid.Column="2" Grid.Row="1" /> 
     <DatePicker Name="dpValidTo" VerticalAlignment="Top" Grid.Column="3" Grid.Row="1" /> 
    </Grid> 

在设计模式中看到这一点:

In design mode a see this

但在应用程序,我看到这一点: but in app i see this

有人知道为什么? 感谢您的建议

回答

1

我没有使用Windows 10 VS 2015的任何问题。虽然,根据您的屏幕截图,它看起来像是某种类型的默认MarginPadding。使用这个:

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="35"></RowDefinition> 
     <RowDefinition Height="35"></RowDefinition> 
     <RowDefinition Height="*"></RowDefinition> 
    </Grid.RowDefinitions> 

    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="auto"></ColumnDefinition> 
     <ColumnDefinition Width="*"></ColumnDefinition> 
     <ColumnDefinition Width="auto"></ColumnDefinition> 
     <ColumnDefinition Width="*"></ColumnDefinition> 
    </Grid.ColumnDefinitions> 

    <Grid.Resources> 
     <Style TargetType="DatePicker"> 
      <Setter Property="Margin" Value="0"/> 
      <Setter Property="Padding" Value="0"/> 
      <Setter Property="HorizontalContentAlignment" Value="Stretch"/> 
      <Setter Property="VerticalContentAlignment" Value="Center"/> 
      <Setter Property="VerticalAlignment" Value="Stretch"/> 
     </Style> 
    </Grid.Resources> 
    <Label Content="Code" Grid.Column="0" Grid.Row="0" /> 
    <TextBox Text="{Binding Path=Code}" Grid.Column="1" Grid.Row="0" MinWidth="160" MaxLength="30" MaxWidth="160" /> 

    <Label Content="Description" Grid.Column="0" Grid.Row="1" /> 
    <TextBox Text="{Binding Path=Description}" Grid.Column="1" Grid.Row="1" MinWidth="160" MaxLength="120" MaxWidth="160" /> 

    <Label Content="Valid from" Grid.Column="2" Grid.Row="0" /> 
    <DatePicker Name="dpValidFrom" Grid.Column="3" Grid.Row="0" /> 

    <Label Content="Valid to" Grid.Column="2" Grid.Row="1" /> 
    <DatePicker Name="dpValidTo" Grid.Column="3" Grid.Row="1" /> 
</Grid>