Skip to content

Commit

Permalink
Added a Trigger to MouseOver Property
Browse files Browse the repository at this point in the history
Added Trigger to show Validation Message on MouseOver  the red Triangle
  • Loading branch information
timunie authored and punker76 committed Jul 10, 2019
1 parent 86aff86 commit 637e0a0
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 2 deletions.
Expand Up @@ -240,7 +240,7 @@
Style="{StaticResource MahApps.Metro.Styles.ToggleSwitch.Win10}" />
<Controls:ToggleSwitch x:Name="visibleSwitch"
Margin="{StaticResource ControlMargin}"
IsChecked="False"
IsChecked="{Binding IsToggleSwitchVisible, ValidatesOnDataErrors=True}"
OffLabel="Collapsed"
OnLabel="Visible"
Style="{StaticResource MahApps.Metro.Styles.ToggleSwitch.Win10}" />
Expand Down
Expand Up @@ -300,6 +300,11 @@ public bool IsHamburgerMenuPaneOpen
return "No time given!";
}

if (columnName == nameof(IsToggleSwitchVisible) && !IsToggleSwitchVisible)
{
return "There is something hidden... \nActivate me to show it up.";
}

return null;
}
}
Expand Down Expand Up @@ -455,5 +460,7 @@ private void ToggleIconScaling(object obj)
public bool IsScaleDownLargerFrame => ((MetroWindow)Application.Current.MainWindow).IconScalingMode == MultiFrameImageMode.ScaleDownLargerFrame;

public bool IsNoScaleSmallerFrame => ((MetroWindow)Application.Current.MainWindow).IconScalingMode == MultiFrameImageMode.NoScaleSmallerFrame;

public bool IsToggleSwitchVisible { get; set; }
}
}
10 changes: 9 additions & 1 deletion src/MahApps.Metro/Styles/ValidationErrorTemplate.xaml
Expand Up @@ -22,7 +22,8 @@
BorderThickness="1"
DataContext="{Binding ElementName=placeholder}">

<Grid Width="12"
<Grid x:Name="RedTriangle"
Width="12"
Height="12"
Margin="1 -4 -4 0"
HorizontalAlignment="Right"
Expand Down Expand Up @@ -125,6 +126,13 @@
</MultiDataTrigger.Conditions>
<Setter TargetName="ValidationPopup" Property="IsOpen" Value="True" />
</MultiDataTrigger>
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding ElementName=RedTriangle, Path=IsMouseOver, Mode=OneWay}" Value="True" />
<Condition Binding="{Binding ElementName=placeholder, Path=AdornedElement.(Validation.HasError), Mode=OneWay}" Value="True" />
</MultiDataTrigger.Conditions>
<Setter TargetName="ValidationPopup" Property="IsOpen" Value="True" />
</MultiDataTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>

Expand Down

0 comments on commit 637e0a0

Please sign in to comment.