TextBox.paml 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <Styles xmlns="https://github.com/perspex"
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  3. xmlns:local="clr-namespace:XamlTestApplication;assembly=XamlTestApplicationPcl">
  4. <Style Selector="TextBox">
  5. <Setter Property="Background" Value="White"/>
  6. <Setter Property="BorderBrush" Value="#ff707070"/>
  7. <Setter Property="BorderThickness" Value="2"/>
  8. <Setter Property="Padding" Value="2"/>
  9. <Setter Property="Template">
  10. <ControlTemplate>
  11. <Border Name="border"
  12. Background="{TemplateBinding Background}"
  13. BorderBrush="{TemplateBinding BorderBrush}"
  14. BorderThickness="{TemplateBinding BorderThickness}"
  15. Padding="2">
  16. <ScrollViewer CanScrollHorizontally="{TemplateBinding CanScrollHorizontally}"
  17. HorizontalScrollBarVisibility="{TemplateBinding HorizontalScrollBarVisibility}"
  18. VerticalScrollBarVisibility="{TemplateBinding VerticalScrollBarVisibility}">
  19. <StackPanel Margin="{TemplateBinding Padding}">
  20. <TextBlock Name="floatingWatermark"
  21. Foreground="#ff007ACC"
  22. FontSize="10"
  23. Text="{TemplateBinding Watermark}"
  24. IsVisible="{TemplateBinding FloatingWatermark}">
  25. </TextBlock>
  26. <Panel>
  27. <TextBlock Name="watermark"
  28. Opacity="0.5"
  29. Text="{TemplateBinding Watermark}"
  30. IsVisible="{TemplateBinding Path=Text, Converter={Static StringConverters.NullOrEmpty}}"/>
  31. <TextPresenter Name="PART_TextPresenter"
  32. CaretIndex="{TemplateBinding CaretIndex}"
  33. SelectionStart="{TemplateBinding SelectionStart}"
  34. SelectionEnd="{TemplateBinding SelectionEnd}"
  35. Text="{TemplateBinding Text}"
  36. TextWrapping="{TemplateBinding TextWrapping}"/>
  37. </Panel>
  38. </StackPanel>
  39. </ScrollViewer>
  40. </Border>
  41. </ControlTemplate>
  42. </Setter>
  43. </Style>
  44. <Style Selector="TextBox:focus /template/ Border#border">
  45. <Setter Property="BorderBrush" Value="Black"/>
  46. </Style>
  47. </Styles>