C# 对网格列使用ItemsControl

C# 对网格列使用ItemsControl,c#,wpf,grid,itemscontrol,C#,Wpf,Grid,Itemscontrol,这就是我现在拥有的。但是我仍然不知道如何设置应该为它创建的列的数量ItemsControl(目前它只是绑定到一些集合单元格,但它应该是列的数量)。 您可以根据需要修改代码。或者,如果不使用绑定,您可以这样做 <ItemsControl Name="icTodoList"> <ItemsControl.ItemTemplate> <DataTemplat

这就是我现在拥有的。但是我仍然不知道如何设置应该为它创建的列的数量
ItemsControl
(目前它只是绑定到一些集合
单元格
,但它应该是列的数量)。


您可以根据需要修改代码。或者,如果不使用绑定,您可以这样做

 <ItemsControl Name="icTodoList">
                        <ItemsControl.ItemTemplate>
                                <DataTemplate>
                                        <Grid Margin="0,0,0,5">
                                                <Grid.ColumnDefinitions>
                                                        <ColumnDefinition Width="*" />
                                                        <ColumnDefinition Width="100" />
                                                </Grid.ColumnDefinitions>
                                                <TextBlock Text="{Binding Title}" />
                                                <ProgressBar Grid.Column="1" Minimum="0" Maximum="100" Value="{Binding Completion}" />
                                        </Grid>
                                </DataTemplate>
                        </ItemsControl.ItemTemplate>
                </ItemsControl>

项目控制项目#1
项目控制项目#2
项目控制项目#3
项目控制项目#4
项目控制项目#5
手动添加
项目控制项目#1
或类似项目是我一直试图避免的。
<ItemsControl Name="WeightItemsControl" ItemsSource="{Binding Cells}" Grid.RowSpan="2" Grid.ColumnSpan="2">
                        <ItemsControl.ItemsPanel>
                            <ItemsPanelTemplate>
                                <Grid Name="WeightGrid"  SnapsToDevicePixels="True" Margin="{Binding WeigntGridMargin}" MouseDown="WeigntGridWrap_OnMouseDown" MouseMove="WeigntGridWrap_OnMouseMove" MouseUp="WeigntGridWrap_OnMouseUp">
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition/>
                                        <ColumnDefinition/>
                                        <ColumnDefinition/>
                                    </Grid.ColumnDefinitions>
                                </Grid>
                            </ItemsPanelTemplate>
                        </ItemsControl.ItemsPanel>
                        <ItemsControl.ItemContainerStyle>
                            <Style>
                                <Setter Property="Grid.Row" Value="{Binding GridRow}" />
                                <Setter Property="Grid.Column" Value="{Binding GridColumn}" />
                            </Style>
                        </ItemsControl.ItemContainerStyle>
                    </ItemsControl>
 <ItemsControl Name="icTodoList">
                        <ItemsControl.ItemTemplate>
                                <DataTemplate>
                                        <Grid Margin="0,0,0,5">
                                                <Grid.ColumnDefinitions>
                                                        <ColumnDefinition Width="*" />
                                                        <ColumnDefinition Width="100" />
                                                </Grid.ColumnDefinitions>
                                                <TextBlock Text="{Binding Title}" />
                                                <ProgressBar Grid.Column="1" Minimum="0" Maximum="100" Value="{Binding Completion}" />
                                        </Grid>
                                </DataTemplate>
                        </ItemsControl.ItemTemplate>
                </ItemsControl>
<ItemsControl>
                        <system:String>ItemsControl Item #1</system:String>
                        <system:String>ItemsControl Item #2</system:String>
                        <system:String>ItemsControl Item #3</system:String>
                        <system:String>ItemsControl Item #4</system:String>
                        <system:String>ItemsControl Item #5</system:String>
                </ItemsControl>