ScreenToGif/Windows/Recorder.xaml

(开头部分) 18KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<n:LightWindow x:Name="RecorderLightWindow" x:Class="ScreenToGif.Windows.Recorder"
               xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
               xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
               xmlns:n="clr-namespace:ScreenToGif.Controls"
               xmlns:u="clr-namespace:ScreenToGif.Util"
               xmlns:c="clr-namespace:ScreenToGif.Util.Converters"
               Title="ScreenToGif" SnapsToDevicePixels="True" UseLayoutRounding="True" AllowsTransparency="True" WindowStyle="None" 
               Topmost="True" Icon="../Resources/Logo.ico" Child="{StaticResource Vector.Back}"
               IsThin="{Binding RecorderThinMode, Source={x:Static u:UserSettings.All}}"
               IsFullScreen="{Binding FullScreenMode, Source={x:Static u:UserSettings.All}}"
               Width="{Binding Source={x:Static u:UserSettings.All}, Path=RecorderWidth, Mode=TwoWay}" 
               Height="{Binding Source={x:Static u:UserSettings.All}, Path=RecorderHeight, Mode=TwoWay}" 
               Left="{Binding Source={x:Static u:UserSettings.All}, Path=RecorderLeft, Mode=TwoWay}"
               Top="{Binding Source={x:Static u:UserSettings.All}, Path=RecorderTop, Mode=TwoWay}"
               FocusManager.FocusedElement="{Binding RelativeSource={x:Static RelativeSource.Self}, Mode=OneTime}"
               Foreground="{Binding Source={x:Static u:UserSettings.All}, Path=RecorderForeground, Mode=TwoWay, Converter={StaticResource ColorToBrush}}"
               Background="{Binding Source={x:Static u:UserSettings.All}, Path=RecorderBackground, Mode=TwoWay, Converter={StaticResource ColorToBrush}}"
               SizeChanged="LightWindow_SizeChanged" Loaded="Recorder_OnLoaded" Closing="Window_Closing" LocationChanged="Window_LocationChanged">
    
    <Window.Resources>
        <Storyboard x:Key="ShowDiscardStoryboard">
            <BooleanAnimationUsingKeyFrames Storyboard.TargetName="DiscardButton" Storyboard.TargetProperty="IsHitTestVisible" Duration="0:0:0" >
                <DiscreteBooleanKeyFrame Value="True" KeyTime="0:0:0"/>
            </BooleanAnimationUsingKeyFrames>

            <ObjectAnimationUsingKeyFrames Storyboard.TargetName="DiscardButton" Storyboard.TargetProperty="Visibility" Duration="0:0:0">
                <DiscreteObjectKeyFrame Value="{x:Static Visibility.Visible}" KeyTime="0:0:0"/>
            </ObjectAnimationUsingKeyFrames>

            <DoubleAnimation Storyboard.TargetName="DiscardButton" Storyboard.TargetProperty="(Button.Opacity)" From="0" To="1" Duration="0:0:1">
                <DoubleAnimation.EasingFunction>
                    <PowerEase Power="8" />
                </DoubleAnimation.EasingFunction>
            </DoubleAnimation>
        </Storyboard>

        <Storyboard x:Key="HideDiscardStoryboard">
            <BooleanAnimationUsingKeyFrames Storyboard.TargetName="DiscardButton" Storyboard.TargetProperty="IsHitTestVisible" Duration="0:0:0" >
                <DiscreteBooleanKeyFrame Value="False" KeyTime="0:0:0"/>
            </BooleanAnimationUsingKeyFrames>

            <ObjectAnimationUsingKeyFrames Storyboard.TargetName="DiscardButton" Storyboard.TargetProperty="Visibility" Duration="0:0:0">
                <DiscreteObjectKeyFrame Value="{x:Static Visibility.Collapsed}" KeyTime="0:0:0"/>
            </ObjectAnimationUsingKeyFrames>

            <DoubleAnimation Storyboard.TargetName="DiscardButton" Storyboard.TargetProperty="(Button.Opacity)" 
                             From="{Binding ElementName=DiscardButton,Path=Opacity}" To="0" Duration="0:0:1">
                <DoubleAnimation.EasingFunction>
                    <PowerEase Power="8" />
                </DoubleAnimation.EasingFunction>
            </DoubleAnimation>
        </Storyboard>

        <c:StageToButtonString x:Key="StageToButtonStringConverter"/>
        <c:StageToCanvas x:Key="StageToCanvasConverter"/>
        <c:ShortcutKeys x:Key="ShortcutKeys"/>
        <c:InvertedBoolToVisibility x:Key="InvertedBoolToVisibility"/>
        <c:BoolOrToInvertedVisibility x:Key="BoolOrToInvertedVisibility"/>
        <c:IntToString x:Key="IntToStringConverter"/>
    </Window.Resources>
后面还有 168 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。