/ / XAML Biele pruhy v GridView - c #, wpf, gridview

XAML Biele pruhy v GridView - c #, wpf, gridview

Takže tu vlastne máme 2 problémy. Prvým z nich sú biele pruhy, ktoré sú v mojom GridView, ktoré nemám žiadnu predstavu o tom, ako sa zbaviť. Druhým problémom je, že CollumnHeader sa naozaj natiahne šírkou.

Tu je obrázok:

tu zadajte popis obrázku

A tu je môj kód:

<UserControl x:Class="PROShine.TeamView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:PROShine"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<UserControl.Resources>
<Style x:Name="ListviewStyle" TargetType="ListView">
<Setter Property="Background" Value="#FF0d0d0d" />
<Setter Property="Foreground" Value="White" />
<Setter Property="BorderBrush" Value="#FF1e1e1e" />
<Setter Property="BorderThickness" Value="1,1,1,1" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
</Style>
<Style x:Name="GridViewStyle" TargetType="GridViewColumnHeader">
<Setter Property="Background" Value="#FF111111" />
<Setter Property="Foreground" Value="White" />
<Setter Property="BorderBrush" Value="#FF1e1e1e" />
<Setter Property="BorderThickness" Value="1,0,1,0" />
<Setter Property="Margin" Value="0,0,0,0" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="true">
<Setter Property="BorderBrush" Value="#FF171717"/>
<Setter Property="Visibility" Value="Visible"/>
<Setter Property="Background"  Value="Transparent"/>
</Trigger>
<Trigger Property="IsPressed" Value="true">
<Setter Property="BorderBrush" Value="#FF171717"/>
<Setter Property="BorderBrush" Value="#FF171717"/>
<Setter Property="Visibility" Value="Visible"/>
<Setter Property="Visibility" Value="Hidden"/>
<Setter Property="Margin" Value="1,1,0,0"/>
</Trigger>
</Style.Triggers>
</Style>
</UserControl.Resources>

<Grid>
<ListView Name="PokemonsListView">
<ListView.View>
<GridView>
<GridViewColumn Header="Id" DisplayMemberBinding="{Binding Id}"/>
<GridViewColumn Header="Name" DisplayMemberBinding="{Binding Name}"/>
<GridViewColumn Header="Level" DisplayMemberBinding="{Binding Experience.CurrentLevel}"/>
<GridViewColumn Header="Status" DisplayMemberBinding="{Binding Status}"/>
<GridViewColumn Header="HP" DisplayMemberBinding="{Binding Health}"/>
<GridViewColumn Header="Remaining Exp" DisplayMemberBinding="{Binding Experience.RemainingExperience}"/>
<GridViewColumn Header="Item" DisplayMemberBinding="{Binding ItemHeld}"/>
</GridView>
</ListView.View>
</ListView>
</Grid>

Už som sa pokúsil nastaviť okraj na 0, šírka naauto na väčšine komponentov, ale to nepomohlo.Tiež, Zmena ForeColor pre každú súčasť mi ukázal, kde pruhy, odkiaľ pochádzajú ... Videl som niektoré ďalšie otázky StackOverflow o tom, ale mali alebo obrovské kódy, ktoré som nerozumel ani nevedel, ako fungujú.

Môže mi niekto vysvetliť, odkiaľ prichádzajú tieto pruhy. A možno poskytnúť kód, aby som mohol vidieť, ako by ste to urobili.

odpovede:

0 pre odpoveď č. 1

Toto som skončil s použitím. Dostal som to od MSDN a upravil som sám sám

    <Style x:Key="GridViewColumnHeaderGripper" TargetType="Thumb">
<Setter Property="Width" Value="18"/>
<Setter Property="Background" Value="{StaticResource SeperatorBrush}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Border Padding="{TemplateBinding Padding}" Background="Transparent">
<Rectangle HorizontalAlignment="Center" Width="1" Fill="{TemplateBinding Background}"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>

Obdĺžniková časť je to, čo vytvára pruhy. Teraz Ak chcete zachovať funkčnosť tých, ktorí nepôjdu na komentár stotakury, ale nastavte možnosť Fill to Transparent, tak pruhy zmiznú, ale stále zachovate chapadla / oddeľovače.