【问题标题】:How to display windows phone 7 bound controls inside columns如何在列内显示windows phone 7绑定控件
【发布时间】:2011-07-19 05:45:56
【问题描述】:

我想知道您是否可以帮我解决这个小问题,我有一个带有数据绑定表示表格的文本块,但问题是我的所有数据看起来都类似于:

Test                 0000000    
Test1                0000000 
Test2                0000000 

所以我想知道如何让控件与此类似:

Test    0    0    0    0
Test1   0    0    0    0
Test2   0    0    0    0

非常感谢每一个帮助

<Grid x:Name="LayoutRoot" Background="Transparent">
    <!--<Grid.RowDefinitions>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>-->
    <!--ContentPanel - place additional content here-->
    <Grid x:Name="ContentPanel" ShowGridLines="True" Margin="12,0,12,0"> 
        <Grid.ColumnDefinitions>
            <ColumnDefinition/>
            <ColumnDefinition/>
            <ColumnDefinition/>
            <ColumnDefinition/>
            <ColumnDefinition/>
            <ColumnDefinition/>
            <ColumnDefinition/>
            <ColumnDefinition/>
        </Grid.ColumnDefinitions>
        <ListBox Height="650" HorizontalAlignment="Left" Margin="11,17,0,0" Name="listBox1" VerticalAlignment="Top" Width="434" >
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal"> 
                        <TextBlock Grid.Column="0" Text="{Binding test}"/>
                        <TextBlock Grid.Column="1" Text="{Binding test1}"/>
                        <TextBlock Grid.Column="2" Text="{Binding test2}"/>
                        <TextBlock Grid.Column="3" Text="{Binding test3}"/>
                        <TextBlock Grid.Column="4" Text="{Binding test4}"/>
                        <TextBlock Grid.Column="5" Text="{Binding test5}"/>
                        <TextBlock Grid.Column="6" Text="{Binding test6}"/>
                        <TextBlock Grid.Column="7" Text="{Binding 7}"/>
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
    </Grid>
</Grid>

【问题讨论】:

    标签: xaml windows-phone-7 binding


    【解决方案1】:

    您需要在模板内移动列定义:

        <ListBox Height="650" HorizontalAlignment="Left" Margin="11,17,0,0" Name="listBox1" VerticalAlignment="Top" Width="434" >
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <Grid> 
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                            <ColumnDefinition/>
                        </Grid.ColumnDefinitions>
                        <TextBlock Grid.Column="0" Text="{Binding test}"/>
                        <TextBlock Grid.Column="1" Text="{Binding test1}"/>
                        <TextBlock Grid.Column="2" Text="{Binding test2}"/>
                        <TextBlock Grid.Column="3" Text="{Binding test3}"/>
                        <TextBlock Grid.Column="4" Text="{Binding test4}"/>
                        <TextBlock Grid.Column="5" Text="{Binding test5}"/>
                        <TextBlock Grid.Column="6" Text="{Binding test6}"/>
                        <TextBlock Grid.Column="7" Text="{Binding 7}"/>
                    </Grid>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
    

    【讨论】:

    • 非常感谢,我花了好几个小时来搞定订单我太容易混淆了,尤其是如果我整晚没睡哈哈,
    • 如果您显示的数据的宽度可能不同,您可能还需要为列设置特定宽度以确保对齐一致。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-01
    • 1970-01-01
    • 2012-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多