ScrollViewer Windows 8 XAML中的多个堆栈面板

时间:2013-10-18 11:02:48

标签: c# xaml windows-store-apps scrollviewer

我似乎在ScrollViewer中添加多个StackPanel时遇到问题。我可以添加第一个,它显示我想要的数据,但是当我尝试添加第二个StackPanel时失败并带来错误“重复分配到'ScrollViewer'对象的'Content'属性”

我的前端代码如下:

<ScrollViewer VerticalScrollBarVisibility="Visible"
                                    HorizontalScrollBarVisibility="Visible"
                                    ZoomMode="Disabled"
                                    Grid.Column="1"
                                    Grid.Row="2"
                                    HorizontalAlignment="Stretch"
                                    VerticalAlignment="Stretch">
            <StackPanel Style='{StaticResource BlueFirstStackPanel}'>

                <TextBlock Text='Facility Patient Number:'
                                     Style='{StaticResource TextBlockStyle}' />
                <TextBox Style='{StaticResource TextBoxStyle}' />
                <TextBlock Text='Patient Number:'
                                     Style='{StaticResource TextBlockStyle}' />
                <TextBox Style='{StaticResource TextBoxStyle}' />
                <TextBlock Text='Patient Support Number:'
                                     Style='{StaticResource TextBlockStyle}' />
                <TextBox Style='{StaticResource TextBoxStyle}' />
                <TextBlock Text='NHIF Number:'
                                     Style='{StaticResource TextBlockStyle}' />
                <TextBox Style='{StaticResource TextBoxStyle}' />

                <TextBlock Text='Patient National ID:'
                                     Style='{StaticResource TextBlockStyle}' />
                <TextBox Style='{StaticResource TextBoxStyle}' />

            </StackPanel>
</ScrollViewer>

我的代码的C#代码中包含了这个:

public sealed class ScrollViewer : ContentControl
        {
        }

以上显示非常好,但是当我添加第二个StackPanel时会出现错误。对此有何帮助?

1 个答案:

答案 0 :(得分:1)

ScrollViewer只能有一个子控件。尝试将StackPanel包装在网格或其他StackPanel中:

        <ScrollViewer>

            <StackPanel x:Name="ScrollViewerChild">

                <StackPanel x:Name="StackPanel1">

                </StackPanel>

                <StackPanel x:Name="StackPanel2">

                </StackPanel>

            </StackPanel>

        </ScrollViewer>