8,734
社区成员
发帖
与我相关
我的任务
分享
<Style x:Key="PepoleListViewItemStyle" TargetType="ListViewItem">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListViewItem">
<Border IsEnabled="True" Name="Border" Padding="0">
<GridViewRowPresenter></GridViewRowPresenter>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True" >
<Setter TargetName="Border" Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="#d6edfb" Offset="0.0"/>
<GradientStop Color="#d6edfb" Offset="0.35"/>
<GradientStop Color="#aadcf9" Offset="0.65"/>
<GradientStop Color="#aadcf9" Offset="1.0"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter TargetName="Border" Property="BorderThickness" Value="0"/>
<Setter TargetName="Border" Property="BorderBrush" Value="#63dafc"/>
<Setter TargetName="Border" Property="CornerRadius" Value="1"/>
</Trigger>
<Trigger Property="IsSelected" Value="true">
<!--<Setter TargetName="Border" Property="Background" Value="Transparent"/>-->
<!--<Setter TargetName="Border" Property="Background" Value="#63dafc"/>-->
<Setter TargetName="Border" Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0" >
<GradientStop Color="#d6edfb" Offset="0.0"/>
<GradientStop Color="#d6edfb" Offset="0.35"/>
<GradientStop Color="#aadcf9" Offset="0.65"/>
<GradientStop Color="#aadcf9" Offset="1.0"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter TargetName="Border" Property="BorderThickness" Value="0"/>
<Setter TargetName="Border" Property="BorderBrush" Value="#0bbcef"/>
<Setter TargetName="Border" Property="CornerRadius" Value="1"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="PepoleHeaderStyle" TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0" >
<GradientStop Color="#FFF" Offset="0.0"/>
<GradientStop Color="#EEE" Offset="1.0"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="Foreground" Value="#FF07034B"/>
<Setter Property="Height" Value="36"/>
<Setter Property="BorderThickness" Value="0,1,0,3"/>
<Setter Property="BorderBrush">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FFA1CCE0" Offset="0"/>
<GradientStop Color="#FFABD5EA" Offset="1.0"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GridViewColumnHeader}">
<Border
x:Name="border"
BorderThickness="{TemplateBinding BorderThickness}"
BorderBrush="{TemplateBinding BorderBrush}"
Background="{TemplateBinding Background}">
<Grid>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<TextBlock
x:Name="txt"
Height="Auto"
Foreground="#0816BB"
VerticalAlignment="Center"
Text="{TemplateBinding Content}"/>
</StackPanel>
<StackPanel Width="1" Background="#FFCCCEDB" HorizontalAlignment="Right" />
</Grid>
</Border>
<!--触发器 设置鼠标进入时的背景、前景样式-->
<!--<ControlTemplate.Triggers>
--><!--设置鼠标进入时的背景、前景样式--><!--
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Orange" TargetName="border" />
<Setter Property="Foreground" Value="White" TargetName="txt"/>
</Trigger>
</ControlTemplate.Triggers>-->
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="RoomManageStyle" TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0" >
<GradientStop Color="#FFF" Offset="0.0"/>
<GradientStop Color="#EEE" Offset="1.0"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<!--<Setter Property="Tag" Value="{StaticResource FIcon}"/>-->
<!--<Setter Property="Foreground" Value="#FF07034B"/> HeaderStringFormat-->
<!--Text="{Binding RelativeSource={RelativeSource Mode=TemplatedParent}, Path=HeaderStringFormat}"-->
<!--<Setter Property="Height" Value="36"/> GridViewColumn-->
<!--<Setter Property="FontFamily" Value="宋体"/>
<Setter Property="FontSize" Value="16"/>-->
<Setter Property="BorderBrush">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FFA1CCE0" Offset="0"/>
<GradientStop Color="#FFABD5EA" Offset="1.0"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GridViewColumnHeader}">
<Border
x:Name="border"
BorderThickness="0,1,0,3"
BorderBrush="{TemplateBinding BorderBrush}"
Background="{TemplateBinding Background}">
<Grid>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<!--<TextBlock
x:Name="icon"
FontSize="26"
Text=""
Padding="0,2.5,0,0"
VerticalAlignment="Center" HeaderStringFormat
Foreground="{TemplateBinding Foreground}"
FontFamily="/武当功夫馆管理系统;component/Resources/#SF2016"/>-->
<TextBlock
x:Name="txt"
Height="Auto"
Foreground="#0816BB"
VerticalAlignment="Center"
Text="{TemplateBinding Content}"/>
</StackPanel>
<StackPanel Width="1" Background="#FFCCCEDB" HorizontalAlignment="Right" />
<!--<local:FButton
x:Name="bnt_筛选"
FIcon=""
FIconSize="12"
Background="{x:Null}" Foreground="#FF042271" HorizontalAlignment="Right" VerticalAlignment="Bottom" Width="Auto" Height="Auto" BorderBrush="#FFCCCEDB" BorderThickness="1" Cursor="Hand" />-->
</Grid>
</Border>
<!--触发器 Foreground-->
<ControlTemplate.Triggers>
<!--设置鼠标进入时的背景、前景样式-->
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Background" Value="Orange" TargetName="border" />
<!--<Setter Property="Foreground" Value="White" TargetName="icon"/>-->
<Setter Property="Foreground" Value="White" TargetName="txt"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Window x:Class="Hotel.ListView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="ListView" Height="300" >
<Window.Resources>
<DataTemplate x:Key="DisplayImage">
<StackPanel HorizontalAlignment="Center" >
<Image Source="/武当功夫馆管理系统;component/Images/room.png" Width="32" Height="32" HorizontalAlignment="Center"/>
</StackPanel>
</DataTemplate>
</Window.Resources>
<Grid>
<!--ContextMenuStrip-->
<ListView Name="listViewRooms" GridViewColumnHeader.Click="Button_Click"
ItemContainerStyle="{StaticResource PepoleListViewItemStyle}"
BorderBrush="{x:Null}" BorderThickness="0" FontFamily="宋体" >
<ListView.View>
<GridView ColumnHeaderContainerStyle="{DynamicResource PepoleHeaderStyle}">
<GridView.Columns>
<GridViewColumn Width="45" Header="" CellTemplate="{StaticResource DisplayImage}" />
<GridViewColumn Width="150" Header="序号" x:Name="mycolumn0">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBox TextAlignment="Center"
Text="{Binding Path=RoomId, Mode=TwoWay}"
MinWidth="{Binding Path=ActualWidth,ElementName=mycolumn0}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
HorizontalContentAlignment="Center"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Width="150" Header="房间编号" x:Name="mycolumn1">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBox TextAlignment="Center"
Text="{Binding Path=RoomId, Mode=TwoWay}"
MinWidth="{Binding Path=ActualWidth,ElementName=mycolumn1}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
HorizontalContentAlignment="Center"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Width="150" Header="房间类型" x:Name="mycolumn2"
HeaderContainerStyle="{DynamicResource RoomManageStyle}">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ComboBox Height="24" x:Name="cmbTypeName"
Style="{StaticResource ComboBoxStyle}"
MinWidth="{Binding Path=ActualWidth,ElementName=mycolumn2}"
ItemsSource="{Binding Path=RoomTypeList, ElementName=roomm}"
SelectedIndex="{Binding RoomTypeId, Mode=TwoWay}">
</ComboBox>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Width="150" Header="添加房间" x:Name="mycolumn4"
HeaderContainerStyle="{DynamicResource RoomManageStyle}" >
<GridViewColumn.CellTemplate>
<DataTemplate/>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn Width="150" Header="删除房间" x:Name="mycolumn5"
HeaderContainerStyle="{DynamicResource RoomManageStyle}" >
<GridViewColumn.CellTemplate>
<DataTemplate/>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView.Columns>
</GridView>
</ListView.View>
<ListView.ContextMenu>
<ContextMenu Name="cm" StaysOpen="True" FontSize="14" Width="108">
<MenuItem Header="添加房间" Name="添加房间" Icon=""
Style="{StaticResource DefaultMenuItem}" />
<MenuItem Header="删除房间" Name="删除房间" Icon=""
Style="{StaticResource DefaultMenuItem}" />
<MenuItem Header="保存" Name="保存" Icon=""
Style="{StaticResource DefaultMenuItem}" />
</ContextMenu>
</ListView.ContextMenu>
</ListView>
</Grid>
</Window>
<ListView x:Name="myListView" HorizontalAlignment="Stretch" Width="210" Margin="10" Height="200" GridViewColumnHeader.Click="myListView_Click">
<ListView.View>
<GridView>
<GridView.ColumnHeaderContainerStyle>
<Style TargetType="GridViewColumnHeader">
<Setter Property="HorizontalContentAlignment" Value="Center"/>
<Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="VerticalAlignment" Value="Center"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="Height" Value="31"></Setter>
<Setter Property="Width" Value="80"></Setter>
<Setter Property="Background" Value="#1c2f2d"></Setter>
<Setter Property="Foreground" Value="#f2fbfa"></Setter>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="GridViewColumnHeader">
<Border Background="{TemplateBinding Background}">
<ContentPresenter VerticalAlignment="{TemplateBinding VerticalAlignment}"
HorizontalAlignment="{TemplateBinding HorizontalAlignment}"></ContentPresenter>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</GridView.ColumnHeaderContainerStyle>
<GridView.Columns>
<GridViewColumn Header="列1" Width="70" DisplayMemberBinding="{Binding 属性1}">
</GridViewColumn>
<GridViewColumn Header="列2" Width="70" DisplayMemberBinding="{Binding 属性2}">
</GridViewColumn>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
GridViewColumnHeader.Click="myListView_Click" 中的事件 为后台排序事件,对数据源进行排序。