私は次のものを持っていますListView
:
<ListView>
<ListView.View>
<GridView/>
</ListView.View>
</ListView>
プログラムで2行目の背景(たとえば)を赤に設定したいと思います。私は何をすべきか?ありがとう。
同様のアプローチを使用できます。
int index = 1;
ListViewItem row = ListView.ItemContainerGenerator.ContainerFromIndex(index) as ListViewItem;
row.BackGround = Brushes.Red;
を使用AlternationCount
して行のインデックスをに格納しAlternationIndex
、トリガーを使用して2番目の行(インデックス1)の背景を赤に設定できます。
<ListView AlternationCount="{x:Static sys:Int32.MaxValue}">
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}">
<Style.Triggers>
<Trigger Property="ItemsControl.AlternationIndex" Value="1">
<Setter Property="Background" Value="Red" />
</Trigger>
</Style.Triggers>
</Style>
</ListView.ItemContainerStyle>
...
</ListView>
AlternationCount
ゼロに再起動する前にカウントする行数を定義します。たとえば、2に設定すると、行のインデックスは0 1 0 1 0 1 ...になり、奇数行または偶数行のみを赤にペイントできます。に設定するとMaxValue
、カウントが再開されることはなくAlternationIndex
、実際のインデックスに効果的に設定されます。
ここで1つのニックネームを明確にしてください。2列目の色を赤にしたいのか教えてください。その場合は、リストビューを繰り返し処理してから、カウント変数を上部に保持し、カウント== 1のときに、リストview.backgroundの色を赤に変更できます。これを試したことがあれば、何が起こったのか教えていただけますか。エラーで終わったのか、何かが起こったのか、何も起こらなかったのか。