如何在WPF中动态创建标签和文本框列表?

Str*_*eam 2 data-binding wpf

我正在尝试并且失败,在WPF中创建标签和文本框列表.我是一名ASP.NET开发人员,目前XAML的体验对我来说有点让我感到压力......我在我面前的Apress'Pro WPF 3.0书中发现它零使用......

在我的流程结束时,我希望用户完成一些对该用户来说是动态的问题.我有一个对象数组,具有"问题"和"答案"的属性.

我希望"问题"显示为标签.

我一直在看ListView控件,但这似乎给了我一个我不感兴趣的Excel样式网格.

在ASP.NET世界中,我使用GridView,它有两列,一列带有Label,另一列带有TextBox.在提交页面时,我将遍历网格视图中的项目以选择文本框的值,并将其关联回Array中的正确对象.

有人可以指导,或者告诉我在WPF中应该使用哪些控件?

额外信息; 它是使用.NET 4,Visual Studio 2010的桌面WPF应用程序.

干杯斯图

Joh*_*wen 10

绝对没有必要像这样简单地使用DataGrid.使用基本的ItemsControl将执行您正在寻找的内容,而无需这种复杂控件的开销.只需更改ItemTemplate,这种方法也很容易定制.

<ItemsControl ItemsSource="{Binding QuestionsToAnswer}">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="100"/>
                    <ColumnDefinition/>
                </Grid.ColumnDefinitions>

                <TextBlock Text="{Binding QuestionText}"/>
                <TextBox Text="{Binding AnswerText}" Grid.Column="1"/>
            </Grid>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)