CAC*_*lan 3 silverlight xaml silverlight-toolkit windows-phone-7
我在工具箱Datepicker中设置边框颜色时遇到问题,因为它出现在页面上.我不是在谈论DatePickerPage.我可以设置背景和前景色,但边框不会占用.
<toolkit:DatePicker x:Name="dpDeliverBy" Header="Deliver By" Grid.Row="6"
HeaderTemplate="{StaticResource MyHeaderTemplate}" Margin="-12, 0, 0, -10" Value=""
BorderBrush="Black" Background="White" BorderThickness="2" Foreground="Black" />
Run Code Online (Sandbox Code Playgroud)
边界似乎没有抓住,我不知道使用什么其他财产.
您无法编辑DatePicker模板,这是一件有趣的事情.我通过查看源代码发现,由于某种原因它发生,因为模板是在主控制主题中定义的 - Generic.xaml它BorderBrush本身没有定义属性.
下载软件包 - 您将需要它来在现有框架之上构建自定义控件.
你应该打开这个主题文件,如果哟看模板DatePicker,您可以编辑值BorderBrush和BorderThickness.需要记住的一件事 - 一旦重新编译源代码,就需要确保使用正确的库(在主项目中引用时).默认情况下,当您添加Microsoft.Phone.Controls.Toolkit单元时,它将引用在GAC中注册的库(假设您安装了工具包)并获取位于SDK文件夹中的库 - 您不希望这样.更改库名称或更改本地副本.
如果你需要一个教程,我只写了一个.
这是修改后的样式(在源代码中进行了修改,以便于重用):
<Style TargetType="controls:DatePicker">
<Setter Property="Background" Value="{StaticResource PhoneTextBoxBrush}"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="BorderBrush" Value="Azure"/>
<Setter Property="Foreground" Value="{StaticResource PhoneTextBoxForegroundBrush}"/>
<Setter Property="HorizontalContentAlignment" Value="Left"/>
<Setter Property="PickerPageUri" Value="/Microsoft.Phone.Controls.Toolkit;component/DateTimePickers/DatePickerPage.xaml"/>
<Setter Property="ValueStringFormat" Value="{}{0:d}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="controls:DatePicker">
<StackPanel>
<ContentControl
Content="{TemplateBinding Header}"
ContentTemplate="{TemplateBinding HeaderTemplate}"
Foreground="{StaticResource PhoneSubtleBrush}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
Margin="12,0,12,-4"/>
<Button
x:Name="DateTimeButton"
Content="{TemplateBinding ValueString}"
Background="{TemplateBinding Background}"
BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}"
FontFamily="{TemplateBinding FontFamily}"
Foreground="{TemplateBinding Foreground}"
Height="72"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"/>
</StackPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2237 次 |
| 最近记录: |