Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <xcad:LayoutAnchorable Title="Folder" CanHide="{Binding IsHideExplorerView}">
- <Views:ExplorerView DataContext="{Binding ExplorerViewModel}"/>
- </xcad:LayoutAnchorable>
- <Button ToolTip="{Binding ButtonLabel,RelativeSource={RelativeSource AncestorType=UserControl,Mode=FindAncestor},UpdateSourceTrigger=PropertyChanged}"
- Command="{Binding ButtonCommand,RelativeSource={RelativeSource AncestorType=UserControl,Mode=FindAncestor},UpdateSourceTrigger=PropertyChanged}"
- Cursor="Hand" VerticalAlignment="Center" >
- <Button.Template>
- <ControlTemplate>
- <Grid>
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="45"/>
- <ColumnDefinition Width="*"/>
- </Grid.ColumnDefinitions>
- <Image Name="ButtonImage" IsEnabled="{Binding Path=IsEnabled,RelativeSource={RelativeSource AncestorType=Button,Mode=FindAncestor}}" >
- <Image.Style>
- <Style TargetType="{x:Type Image}">
- <Style.Triggers>
- <Trigger Property="IsEnabled" Value="True">
- <Setter Property="Source" Value="{Binding ActiveImage,RelativeSource={RelativeSource AncestorType=UserControl,Mode=FindAncestor},UpdateSourceTrigger=PropertyChanged}"/>
- </Trigger>
- <Trigger Property="IsEnabled" Value="False">
- <Setter Property="Source" Value="{Binding DeactiveImage,RelativeSource={RelativeSource AncestorType=UserControl,Mode=FindAncestor},UpdateSourceTrigger=PropertyChanged}"/>
- </Trigger>
- </Style.Triggers>
- </Style>
- </Image.Style>
- </Image>
- <Label Name="LabelContent" Content="{Binding ButtonLabel,RelativeSource={RelativeSource AncestorType=UserControl,Mode=FindAncestor},UpdateSourceTrigger=PropertyChanged}"
- Grid.Column="1" IsEnabled="{Binding Path=IsEnabled,RelativeSource={RelativeSource AncestorType=Button,Mode=FindAncestor}}" VerticalContentAlignment="Center" />
- </Grid>
- </ControlTemplate>
- </Button.Template>
- </Button>
- public static DependencyProperty activeImage =
- DependencyProperty.Register("ActiveImage", typeof(type of this property like "string"), typeof(type of the custom control that you need like "MyButton"), new FrameworkPropertyMetadata("", FrameworkPropertyMetadataOptions.BindsTwoWayByDefault));
- public string ActiveImage
- {
- get { return (string)GetValue(activeImage); }
- set { SetValue(activeImage, value); }
- }
- <custom:MyButton ButtonCommand="{Binding DecreaseImagesCount}" ButtonLabel="ZoomIn" ActiveImage="/Images/ActiveImages/ZoomIn.png" DeactiveImage="/Images/GrayImages/ZoomIn.png"
- Grid.Column="2" Margin="3,4" />
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement