Browse Source

Use a path for the TextBox error icon.

pull/691/head
Steven Kirk 10 years ago
parent
commit
7f2cbd0b71
  1. 1
      src/Avalonia.Controls/Canvas.cs
  2. 13
      src/Avalonia.Themes.Default/TextBox.xaml

1
src/Avalonia.Controls/Canvas.cs

@ -47,6 +47,7 @@ namespace Avalonia.Controls
/// </summary> /// </summary>
static Canvas() static Canvas()
{ {
ClipToBoundsProperty.OverrideDefaultValue<Canvas>(false);
AffectsCanvasArrange(LeftProperty, TopProperty, RightProperty, BottomProperty); AffectsCanvasArrange(LeftProperty, TopProperty, RightProperty, BottomProperty);
} }

13
src/Avalonia.Themes.Default/TextBox.xaml

@ -29,15 +29,12 @@
</TextBlock> </TextBlock>
<DockPanel LastChildFill="True"> <DockPanel LastChildFill="True">
<Panel Name="error" DockPanel.Dock="Right" Margin="4 0 0 0"> <Canvas Name="error" DockPanel.Dock="Right" Width="14" Height="14" Margin="4 0 1 0">
<ToolTip.Tip> <ToolTip.Tip>
<ItemsControl Items="{TemplateBinding DataValidationErrors}" MemberSelector="Message"/> <ItemsControl Items="{TemplateBinding DataValidationErrors}" MemberSelector="Message"/>
</ToolTip.Tip> </ToolTip.Tip>
<!-- TODO: Draw as a path --> <Path Data="M14,7 A7,7 0 0,0 0,7 M0,7 A7,7 0 1,0 14,7 M7,3l0,5 M7,9l0,2" Stroke="{StyleResource ErrorBrush}" StrokeThickness="2"/>
<Ellipse Width="14" Height="14" Stroke="{StyleResource ErrorBrush}" StrokeThickness="1"/> </Canvas>
<Path Data="M7,4l0,5" Stroke="{StyleResource ErrorBrush}" StrokeThickness="2"/>
<Path Data="M7,10l0,2" Stroke="{StyleResource ErrorBrush}" StrokeThickness="2"/>
</Panel>
<ScrollViewer CanScrollHorizontally="{TemplateBinding CanScrollHorizontally}" <ScrollViewer CanScrollHorizontally="{TemplateBinding CanScrollHorizontally}"
HorizontalScrollBarVisibility="{TemplateBinding (ScrollViewer.HorizontalScrollBarVisibility)}" HorizontalScrollBarVisibility="{TemplateBinding (ScrollViewer.HorizontalScrollBarVisibility)}"
@ -73,10 +70,10 @@
<Style Selector="TextBox:error /template/ Border#border"> <Style Selector="TextBox:error /template/ Border#border">
<Setter Property="BorderBrush" Value="{StyleResource ErrorBrush}"/> <Setter Property="BorderBrush" Value="{StyleResource ErrorBrush}"/>
</Style> </Style>
<Style Selector="TextBox /template/ Panel#error"> <Style Selector="TextBox /template/ Canvas#error">
<Setter Property="IsVisible" Value="False"/> <Setter Property="IsVisible" Value="False"/>
</Style> </Style>
<Style Selector="TextBox:error /template/ Panel#error"> <Style Selector="TextBox:error /template/ Canvas#error">
<Setter Property="IsVisible" Value="True"/> <Setter Property="IsVisible" Value="True"/>
</Style> </Style>
<Style Selector="TextBox /template/ ToolTip"> <Style Selector="TextBox /template/ ToolTip">

Loading…
Cancel
Save