我有一个班级:
public class TempClass
{
public int Row
{
get { return row; }
set { row = value; }
}
public int Column
{
get { return column; }
set { column = value; }
}
public string Value
{
get { return this.value; }
set { this.value = value; }
}
int row;
int column;
string value;
public TempClass(int row, int column, string value)
{
this.row = row;
this.column = column;
this.value = value;
}
}
我创建了List<TempClass> DummyCollection
并将其绑定到ItemsControl
。 ItemsControl
使用UniformGrid
面板作为ItemsPanel
属性。这是XAML代码:
<ItemsControl ItemsSource="{Binding Path=DummyCollection}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Rows="3" Columns="5" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate DataType="TempClass">
<Border>
<TextBlock Text="{Binding}" />
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
我希望能够将TempClass
项绑定到ItemsControl
中的特定单元格,即我想设置项容器的Grid.Row
和Grid.Column
属性匹配Row
项的Column
和TempClass
属性。我如何实现这一目标?谢谢。
答案 0 :(得分:7)
<ItemsControl>
<ItemsControl.ItemContainerStyle>
<Style>
<Setter Property="Grid.Row" Value="{Binding Row}"/>
<Setter Property="Grid.Column" Value="{Binding Column}"/>
</Style>
</ItemsControl.ItemContainerStyle>
...
</ItemsControl>