.NET多用户界面/ Xaml:具有静态标题行和自动格式化列宽数据绑定的表

m3eecexj  于 2023-01-22  发布在  .NET
关注(0)|答案(1)|浏览(122)

我试着设计一个表格,你可以在每一行添加一组数据。这组数据包含3项:一个复选框和两个标签。标题行应该包含树静态字符串。我试着这样做,但我无法管理,标题和底层行一起行为。P.e.我想这样定义列:* 、自动、*。这意味着外部列应根据列中最长的文本(标题和数据)调整大小,而中间行应占用其余空间。
目前我有两个单独的网格以下的文本,因为我不能把它们加入一个。另外,为了测试我使外部列的大小静态。都有相同的参数。但正如所告诉的,他们应该在一个表中与 ,自动,

<Grid RowDefinitions="40, *"
        Padding="5">
    <Grid ColumnDefinitions="100, *, 80"
        Grid.Row="0">
        <Label Text="Checked" Grid.Row="0" Grid.Column="0" Padding="10"/>
        <Label Text="Article" Grid.Row="0" Grid.Column="1" Padding="10"/>
        <Label Text="Price" Grid.Row="0" Grid.Column="2" Padding="10"/>
    </Grid>
    <CollectionView ItemsSource="{Binding Items, Converter={StaticResource sconverter}}"
                    Grid.Row="1">
        <!-- , Converter={StaticResource converter}-->
        <CollectionView.ItemTemplate>
            <DataTemplate>
                    <Grid ColumnDefinitions="100, *, 80"
                    Grid.Row="1">
                    <CheckBox IsChecked="{Binding isChecked}" Grid.Column="0"/>
                    <Label Text="{Binding name}"  
                            Padding="5" Grid.Column="1"/>
                    <!--BackgroundColor="LightGray"/-->
                    <Label Text="{Binding price, Converter={StaticResource vconverter}}" 
                            Padding="5" Grid.Column="2"/>
                    <!--BackgroundColor="DarkGray"/-->
                </Grid>
            </DataTemplate>
        </CollectionView.ItemTemplate>
    </CollectionView>
</Grid>

表格:

像CollectionView和DataTemplate这样用于数据绑定的东西需要一些容器,比如网格,它们不能包含不同的项目,比如复选框和标签。
1.我如何将这两个表连接在一起,同时保持绑定不变?
1.是否可以根据文本字体和大小管理行的高度?
谢谢你,托马斯

hsvhsicv

hsvhsicv1#

不太确定我是否理解这里对“在同一个表中”的关注。CollectionView本身有一个容器,它会在其中将每一项作为新行添加(在同一个“表”中)。
您可能希望使用CollectionView的Header,如果我理解正确的话,这可能会回答您的问题。但是,即使您使用Header/ HeaderTemplate,您仍然需要在两个不同的区域中定义,使用ColumnSizes 、Auto、 分隔网格,以便将它们对齐。
另外,我非常确定集合视图会调整所有行的高度,以使它们适合最大行的内容。因此,如果你想要“自定义”行高,你可能要么必须为你的集合视图定制一个行为,要么为你的项目添加一个特定的高度--如果你想根据行中的值来选择不同的高度,可以通过转换器。

相关问题