【问题标题】:How can I add textbox in last column of listview in UWP?如何在 UWP 列表视图的最后一列中添加文本框?
【发布时间】:2018-01-04 06:10:11
【问题描述】:

每当UWPlistview 的最后一列时,我想在下面添加textbox

Thins 是我的 MainPage.xaml

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <ListView x:Name="MyList">
        <ListView.ItemTemplate>
            <DataTemplate>
                <Grid>
                    <StackPanel>
                        <TextBlock Text="{Binding todo}" ></TextBlock>
                        <TextBlock Text="{Binding checkList}"></TextBlock>
                        <TextBlock Text="{Binding date}"></TextBlock>
                    </StackPanel>
                </Grid>
            </DataTemplate>
        </ListView.ItemTemplate>
    </ListView>
</Grid>

如果我将TextBox 放入StackPaneltextbox 显示在列内。 但我想知道如何在最后一列出现时在下面添加textbox

非常感谢:)

【问题讨论】:

    标签: c# visual-studio xaml uwp


    【解决方案1】:

    如果我正确理解您的问题,您首先要显示 ListView 中的所有项目,然后在最后一个项目下方显示单个 TextBox

    只需在ListView外接TextBox即可。

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <StackPanel>
            <ListView x:Name="MyList">
                <ListView.ItemTemplate>
                    <DataTemplate>
                        <StackPanel>
                            <TextBlock Text="{Binding todo}" ></TextBlock>
                            <TextBlock Text="{Binding checkList}"></TextBlock>
                            <TextBlock Text="{Binding date}"></TextBlock>
                        </StackPanel>
                    </DataTemplate>
                </ListView.ItemTemplate>
            </ListView>
            <TextBox x:Name="MyTextBox" />
        </StackPanel>
    </Grid>
    

    我使用StackPanel 将它们放在彼此下方,但是您也可以使用RowDefinitions。选择适合您需要的布局。

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="*" />
        </Grid.RowDefinitions>
    
        <ListView x:Name="MyList" Grid.Row="0">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <StackPanel>
                        <TextBlock Text="{Binding todo}" ></TextBlock>
                        <TextBlock Text="{Binding checkList}"></TextBlock>
                        <TextBlock Text="{Binding date}"></TextBlock>
                    </StackPanel>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>
        <TextBox x:Name="MyTextBox" Grid.Row="1" />
    </Grid>
    

    请注意,我还删除了您的 DataTemplate 中的 Grid,因为它不是必需的。

    【讨论】:

    • 非常感谢 :) 我添加了 relativePanel :)
    猜你喜欢
    • 1970-01-01
    • 2017-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多