2

私は次のものを持っていますListView

<ListView>
   <ListView.View>
      <GridView/>
   </ListView.View>
</ListView>

プログラムで2行目の背景(たとえば)を赤に設定したいと思います。私は何をすべきか?ありがとう。

4

3 に答える 3

3

同様のアプローチを使用できます。

int index = 1;
ListViewItem row = ListView.ItemContainerGenerator.ContainerFromIndex(index) as ListViewItem;
row.BackGround = Brushes.Red;
于 2012-09-15T18:15:20.713 に答える
2

を使用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、実際のインデックスに効果的に設定されます。

于 2012-09-15T11:17:42.113 に答える
-1

ここで1つのニックネームを明確にしてください。2列目の色を赤にしたいのか教えてください。その場合は、リストビューを繰り返し処理してから、カウント変数を上部に保持し、カウント== 1のときに、リストview.backgroundの色を赤に変更できます。これを試したことがあれば、何が起こったのか教えていただけますか。エラーで終わったのか、何かが起こったのか、何も起こらなかったのか。

于 2012-09-15T10:11:58.887 に答える