创建侧边栏 – 像WPF中的Windows桌面应用程序一样

我想要做的是在 WPF中创建一个桌面应用程序,其UI是一个小图标将保持固定在屏幕左边缘的中心,点击(或可能悬停)将滑动打开侧边栏(如谷歌桌面栏)沿着屏幕的左边缘运行(固定位置,不能移动).

请注意,我要求的可能就像一个appbar但我不希望左侧边缘的桌面图标移动,因为它发生在appbar,即我不希望它占用桌面空间… .can有人请建议我出路吗?

我使用this实现了部分解决方案,但我无法获得幻灯片动画和固定位置到锻炼

解决方法

像这样的东西可以工作:

那么你当然可以为侧边栏创建动画幻灯片.这显示了(部分)透明度和切换原理.

XAML:

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        WindowStyle="None" Topmost="True" WindowState="Maximized" 
        AllowsTransparency="True" Background="Transparent">
    <Grid>
        <Grid.ColumnDeFinitions>
            <ColumnDeFinition Width="Auto" />
            <ColumnDeFinition />
        </Grid.ColumnDeFinitions>
        <Rectangle Name="rect" Width="100" VerticalAlignment="Stretch" Fill="#99000000" Visibility="Collapsed" />
        <Button Style="{StaticResource {x:Static ToolBar.ButtonStyleKey}}" Width="32" Height="32" FontSize="16" VerticalAlignment="Center" HorizontalAlignment="Right" Background="White" Click="Button_Click">&gt;</Button>
    </Grid>
</Window>

C#:

private void Button_Click(object sender,RoutedEventArgs e)
{
    if (rect.Visibility == System.Windows.Visibility.Collapsed)
    {
        rect.Visibility = System.Windows.Visibility.Visible;
        (sender as Button).Content = "<";
    }
    else 
    {
        rect.Visibility = System.Windows.Visibility.Collapsed;
        (sender as Button).Content = ">";
    }        
}

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...