[设置DataGrid ItemsSource导致XamlParseException

问题描述 投票:0回答:1

所以我使用的XAML文件有问题;我正在尝试使用DataGrid为用户选择的元素添加属性的表格视图。我目前正在尝试执行的操作是,我有一个列表,其中包含在用户单击时填充的适当对,然后将ItemsSource设置为该列表。我尝试更改此实现的详细信息(绑定ItemsSource而不引用datagrid本身,等等,但迟早它们似乎都遇到了相同的错误)Call Stack Trace when attempting to set ItemsSource

(对我而言,很奇怪的是,在不同元素上单击几下(并在弹出异常时单击“继续”)后,网格确实填充了数据,尽管它似乎经常“冻结”(显示相同的数据)。对于最后重新刷新几个元素之前的几个元素,不会引发任何异常,但是行为绝对不一致)

。xaml.cs

// ParameterPair is a custom class that contains 2 string fields (name, value)
        public List<ParameterPair> AllParameters { get; private set; } = new List<ParameterPair>();


                // called (only) when a new element is click
                // ... code to populate AllParameters here
                // definitely populates properly, checked through debugging
                this.dGrid.ItemsSource = AllParameters;

。xaml

<Page ...>
<Grid HorizontalAlignment="Stretch">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>

    <TabControl>
        <TabItem Header="Add Constraint">
            <Grid Name="loginBlock" Grid.Row="0">                        

        <GroupBox Header="Properties"
                      HorizontalAlignment="Stretch"
                      VerticalAlignment="Top"
                      Margin="10, 10, 10, 0">
                        <StackPanel>


                            <controls:DataGrid x:Name="dGrid" 
                            Height="300" Margin="12"
                            AutoGenerateColumns="true"
                        ItemsSource="{Binding}"
                                               />
                </StackPanel>
            </Grid>
        </TabItem>
        <TabItem Header="Manage Constraints" />
    </TabControl>

</Grid>
</Page>
wpf xaml revit-api
1个回答
0
投票

错误似乎不是来自您的数据绑定,而是来自某个地方的xaml标记。您的GroupBox似乎没有右括号。这是自定义DataGrid吗?由于与其他控件不同,它被称为“ controls:DataGrid”。其标记可能有问题。

© www.soinside.com 2019 - 2024. All rights reserved.