我如何根据WPF中的ListView项目HarfNotu值更改ListView项目背景颜色 [英] How i change ListView Item Background Color according to listview item HarfNotu value in wpf

查看:170
本文介绍了我如何根据WPF中的ListView项目HarfNotu值更改ListView项目背景颜色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的ListView看起来像: http://oi36.tinypic.com/ek5n3o.jpg

My ListView looks like: http://oi36.tinypic.com/ek5n3o.jpg

我的列表视图xaml:

My listview xaml:

<ListView  Name="notListView" Width="550" HorizontalAlignment="Left">
        <ListView.View>
        <GridView AllowsColumnReorder="true">
            <GridViewColumn Header="Ders Kodu" Width="100" DisplayMemberBinding="{Binding Path=DersKodu}" />
            <GridViewColumn Header="Ders Adı" Width="200" DisplayMemberBinding="{Binding Path=DersAdi}" />
            <GridViewColumn Header="Vize" Width="50" DisplayMemberBinding="{Binding Path=Vize}" />
            <GridViewColumn Header="Final" Width="50" DisplayMemberBinding="{Binding Path=Final}" />
            <GridViewColumn Header="Ortalama" Width="60" DisplayMemberBinding="{Binding Path=Ortalama}" />
            <GridViewColumn Header="Harf Notu" Width="60" DisplayMemberBinding="{Binding Path=Harf}" />
        </GridView>
    </ListView.View>
</ListView>

我的.cs代码:

notListView.ItemsSource = notGoruntule(1, 1); // notGoruntule() function returns an Arraylist, which contains my "Notlar" objects.

我尝试过:

ListViewItem lvitem = (ListViewItem)notListView.Items[0];
lvitem.Background = Brushes.Red;

但是第一行抛出:

Unable to cast object of type 'OBS_Interface_5.Classes.Notlar' to type 'System.Windows.Controls.ListViewItem'.

我该如何解决这个问题?

How i solve this problem?

推荐答案

您可以直接在xaml中Style ListViewItem

You can Style the ListViewItem in xaml directly,

示例:

假设您的"Harf"变量是一个字符串,则可以尝试

Assuming your "Harf" variable is a string, you can try

<ListView Name="notListView"
          Width="550"
          HorizontalAlignment="Left">
  <ListView.Resources>
    <Style TargetType="{x:Type ListViewItem}">
      <Style.Triggers>
        <DataTrigger Binding="{Binding Harf}"
                      Value="1">
          <Setter Property="Background"
                  Value="Red" />
        </DataTrigger>
      </Style.Triggers>
    </Style>
  </ListView.Resources>
  ...

现在值为1的所有ListView行都将具有红色" Background

Now any ListView Row with "Harf" Value of 1 will have a "Red" Background

这篇关于我如何根据WPF中的ListView项目HarfNotu值更改ListView项目背景颜色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆