0

为什么此代码会在运行员工编号、姓名和卡车编号的文本块上引发“VisualTree set more than once”错误?它在数据模板中。我尝试将该部分包装在网格中,但它没有用。

  <Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width=".5*"/>
        <ColumnDefinition Width=".5*"/>
    </Grid.ColumnDefinitions>

    <ListView Grid.ColumnSpan="2" Grid.Row="0" BorderBrush="Transparent" Background="Transparent" Name="lvDriverQueueWork" ItemsSource="{Binding ICollectionQueueList, UpdateSourceTrigger=PropertyChanged}" Margin="10,0,10,0" Foreground="Black" AllowDrop="True">
        <ListView.GroupStyle>
            <GroupStyle>
                <GroupStyle.HeaderTemplate>
                    <DataTemplate>
                        <TextBlock FontSize="14" FontWeight="SemiBold" Background="Transparent">
                            <Run Text="{Binding Path=Items[0].EmployeeNumber}"/>
                            <Run Text="-"/>
                            <Run Text="{Binding Name, Mode=OneWay}"/>
                            <Run Text="-"/>
                            <Run Text="{Binding Path=Items[0].TruckNumber}"/>
                        </TextBlock>
                    </DataTemplate>
                </GroupStyle.HeaderTemplate>
            </GroupStyle>
        </ListView.GroupStyle>
        <ListView.ItemContainerStyle>
            <Style TargetType="{x:Type ListViewItem}">
                <Style.Resources>
                    <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="#F7F6E4"/>
                    <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="black"/>
                </Style.Resources>
                <Setter Property="Margin" Value="0,0,0,-1"/>
                <Style.Triggers>
                    <Trigger Property="IsSelected" Value="True">
                        <Setter Property="BorderBrush" Value="Transparent" />
                    </Trigger>
                </Style.Triggers>
            </Style>
        </ListView.ItemContainerStyle>
        <ListView.ItemTemplate>
            <ItemContainerTemplate>
                <Border BorderThickness="0,1,0,1" Padding="0,2,0,2" BorderBrush="#DCE1E5" Width="250">
                <Grid>
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="150"/>
                        <ColumnDefinition Width="*"/>
                    </Grid.ColumnDefinitions>
                    <TextBlock Grid.Column="0" Padding="18,0,0,0" Text="{Binding Trailer, UpdateSourceTrigger=PropertyChanged}"/>
                    <TextBlock Grid.Column="1" Text="{Binding Carrier, UpdateSourceTrigger=PropertyChanged}"/>
                </Grid>
                </Border>
            </ItemContainerTemplate>
        </ListView.ItemTemplate>
    </ListView>
</Grid>
4

0 回答 0