问题描述
我在 xaml 中有代码并尝试创建 controlTemplae
<ListView Name="seznamSkupin" Background="White" Grid.Row="1" Grid.Column="0" BorderBrush="#a9a9a9" BorderThickness="0,1,0" Padding="0,30">
<ListView.ItemContainerStyle>
<Style>
...structure...
</Style>
</ListView.ItemContainerStyle>
<ListView.View>
<GridView ColumnHeaderContainerStyle="{StaticResource gridviewheader}">
<GridViewColumn displayMemberBinding="{Binding NazevSkupiny }"/>
</GridView>
</ListView.View>
</ListView>
数据在代码后面
List<Skupina> skupina = new List<Skupina>();
string[] skupiny = {"Test","3.A","3.B"};
for (int i = 0; i < skupiny.Length; i++)
{
skupina.Add(new Skupina() { NazevSkupiny = skupiny[i]});
}
seznamSkupin.ItemsSource = skupina;
它在 xaml 中工作,但我需要为 listView 创建模板, - 我有两个 listViews 和 nedd 使用相同的样式。我正在使用单独的 style.xaml,尝试此操作,但未显示“seznamSkupin”的内容:
<Style x:Key="dialogListView" targettype="{x:Type ListView}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate targettype="{x:Type ListView}">
<ListView Background="{StaticResource color3}" BorderThickness="0" Padding="0,30">
<ContentPresenter VerticalAlignment="Center" HorizontalAlignment="Center"/>
<ListView.ItemContainerStyle>
<Style targettype="{x:Type ListViewItem}">
<Setter Property="FontFamily" Value="{StaticResource fontFamilyDefault}" />
<Setter Property="FontSize" Value="{StaticResource fontSize3}" />
<Setter Property="Foreground" Value="{StaticResource color5 }" />
<Setter Property="Margin" Value="12,0"/>
<Setter Property="OverridesDefaultStyle" Value="true" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate targettype="{x:Type ListViewItem}">
<Border CornerRadius="0" SnapsToDevicePixels="True"
BorderThickness="0,1"
BorderBrush="Black"
Background="{TemplateBinding Background}"
>
<Border x:Name="InnerBorder" CornerRadius="0" BorderThickness="0,3,3" BorderBrush="white" Padding="0,3" >
<Grid>
<GridViewRowPresenter VerticalAlignment="Center" HorizontalAlignment="Left" SnapsToDevicePixels="True" Content="{TemplateBinding Content}" Columns="{TemplateBinding GridView.ColumnCollection}" />
</Grid>
</Border>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsFocused" Value="True">
<Setter Property="Background" Value="{StaticResource color1}" />
<Setter Property="Foreground" Value="{StaticResource color4}" />
<Setter Property="BorderBrush" Value="Transparent" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ListView.ItemContainerStyle>
</ListView>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
我想,问题出在 GridViewRowPresenter
上,有人可以帮忙吗?谢谢!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)