小编use*_*718的帖子

WPF ListBox选择颜色

很抱歉,如果之前已经询问过这个问题,但我无法找到解决方案,无法找到相关问题或Google上的相关问题.

在我的应用程序中,我正在尝试重新创建单词新文档对话框,列在项目的左侧,右侧是带有文本的图标.在Word中,当鼠标悬停时它具有橙色渐变,而当您选择项目时,它具有较暗的渐变.除了在选择项目后更改背景颜色外,我已经重新创建了大部分内容.这是我用来创建它的代码:

    <ListView Margin="236,34,17,144" Name="listView1" HorizontalContentAlignment="Stretch">
        <ListView.ItemsPanel>
            <ItemsPanelTemplate>
                <UniformGrid  Columns="5" IsItemsHost="True" VerticalAlignment="Top" >
                </UniformGrid>
            </ItemsPanelTemplate>
        </ListView.ItemsPanel>
        <ListView.ItemTemplate>
            <DataTemplate >
                <StackPanel HorizontalAlignment="Center" Width="auto">
                    <Image Source="images/document32.png" HorizontalAlignment="Center"/>
                    <TextBlock Text="{Binding}" HorizontalAlignment="Center" />
                </StackPanel>
            </DataTemplate>
        </ListView.ItemTemplate>
        <ListView.ItemContainerStyle>
            <Style TargetType="{x:Type ListViewItem}"  >                 
                <Style.Triggers>
                    <Trigger Property="IsSelected" Value="true">
                        <Setter Property="Foreground" Value="Yellow" />
                        <Setter Property="Background" Value="Orange" />
                    </Trigger>
                    <Trigger Property="IsMouseOver" Value="true">
                        <Setter Property="Foreground" Value="Black" />
                        <Setter Property="Background">
                            <Setter.Value>
                                <LinearGradientBrush EndPoint="0.5,1" StartPoint="1,0">
                                    <GradientStop Color="#d3e7ff" Offset="0.986"/>
                                    <GradientStop Color="#b0d2fc" Offset="0.5"/>
                                    <GradientStop Color="#8ec1ff" Offset="0.51"/>
                                </LinearGradientBrush>
                            </Setter.Value>
                        </Setter>
                    </Trigger>

                </Style.Triggers>
            </Style>
        </ListView.ItemContainerStyle>
    </ListView> …
Run Code Online (Sandbox Code Playgroud)

wpf triggers listbox listboxitem

14
推荐指数
1
解决办法
3万
查看次数

WPF子菜单样式

我有一个ContextMenu样式和一个MenuItem样式,它们都在顶层菜单上正常工作.问题是如果我在菜单项中添加子菜单,则子菜单没有正确设置样式.看起来你现在只能设置菜单项的样式,而不是实际的子菜单,所以你不能替换IsMouseOver样式(它只是默认为在Windows上启用的任何主题).

我搜索和搜索过,我能找到的最接近的是MSDN上的论坛帖子http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/69269d23-f97c-42e3-a9dd-0e7c0ba49bdd ?prof = required但它实际上也没有正确回答问题,因为他的例子我遇到了同样的问题.任何帮助,将不胜感激!提前致谢.

编辑:周杰伦,这就是我在做的事情.这是一些代码,在UserControl.Resources中作为我的对象的顶部.

    <Style TargetType="{x:Type MenuItem}">
        <Setter Property="Background" Value="#0f3c5a"></Setter>
        <Setter Property="Foreground" Value="White"></Setter>
        <Style.Triggers>
            <Trigger Property="IsHighlighted" Value="True">
                <Setter Property="Background" Value="Black"></Setter>
            </Trigger>
            <Trigger Property="IsEnabled" Value="False">
                <Setter Property="Foreground" Value="LightGray"></Setter>
            </Trigger>
        </Style.Triggers>
    </Style>
    <Style TargetType="{x:Type ContextMenu}">
        <Setter Property="OverridesDefaultStyle" Value="True"/>
        <Setter Property="SnapsToDevicePixels" Value="True"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ContextMenu}">

                    <!--Here is where you change the border thickness to zero on the menu-->
                    <Border BorderThickness="0" x:Name="Border"  >
                     <StackPanel ClipToBounds="True" Orientation="Vertical"
                     IsItemsHost="True"/>
                     </Border>
                    <ControlTemplate.Triggers>
                        <Trigger Property="IsMouseOver" Value="true">
                            <Setter TargetName="Border" Property="Background" Value="#5082a4" /> …
Run Code Online (Sandbox Code Playgroud)

wpf contextmenu styling menuitem

8
推荐指数
1
解决办法
2万
查看次数

WPF TabItem标题图像

我在WPF中有一个带有3个选项卡的TabControl,每个选项卡在选项卡标题旁边都有一个图像.这是一个例子

        <TabItem>
            <TabItem.Header>
                <StackPanel Orientation="Horizontal">
                    <Image Name="img" Height="auto" Width="auto" Source="images/1.png" />
                    <TextBlock Text="Login" Margin="2,0,0,0" VerticalAlignment="Center" />
                </StackPanel>
            </TabItem.Header>
        </TabItem>
Run Code Online (Sandbox Code Playgroud)

选择选项卡时,文本为黑色,背景为白色,而不是浅灰色和略深的文本.这很好用,但我想不出的是如何更改未选中的选项卡上的图像?现在图像看起来都是一样的,绿色的圆圈里面有一个数字,但是当没有选中一个标签时,我希望它变成另一个图像,即图片/ 1_notselected.png和images/2_notselected.png当标签是是选定的.谢谢!

wpf tabcontrol styling

5
推荐指数
1
解决办法
3万
查看次数

Git一直要求输入密码

我已经搜索并搜索了几个小时,以解决这个问题并且没有尝试过任何工作.让我先说一下,虽然之前我使用过*nix,但我几乎都是菜鸟,所以我确定我错过了某个地方设置Git的一步.

我在网络上设置了一个Ubuntu盒子来托管我们新的Git仓库.这个盒子正在运行Git,Gitosis以及ViewGit.似乎所有东西都设置正确,我可以查看我在ViewGit中添加的repo.问题是当我在Windows中通过TortoiseGit克隆回购时.当我输入"git@10.10.0.144:/home/git/Plugins/.git/"的地址时,它会自动询问linux框中"git"用户的密码.我可以将此地址从"git @"更改为系统上的任何其他用户名,它也会询问该用户的密码.在任何情况下,输入该用户的密码都会继续将repo克隆到本地系统.分支,放置和拉取也会要求输入密码,如果输入,一切都能正常运行.

我已经在我试过的Windows框上创建了RSA pub文件(通过git bash)并将它们存储在gitosis的keydir文件夹中,以及添加用户gitosis.conf文件(rsa的名称)文件减去.pub).我还修改了我的sshd_config文件以包含"AllowUsers git"以及我在系统上的用户名.我很茫然,似乎不是一个好主意,让我想要访问此存储库的每个人都有服务器IP地址,用户名,然后是该用户名的密码,这样他们就可以下载一些代码.谢谢您的帮助!

git gitosis

5
推荐指数
1
解决办法
5299
查看次数