Таблица данных отображается как пустая таблица данных.Даже заголовки не отображаются - PullRequest
0 голосов
/ 11 мая 2019

Я пытался создать список предложений. Это означает, что когда я набираю штрих-код, все штрих-коды, начиная с того, что я набрал, должны отображаться в другой сетке данных. Сетка данных отображает правильное количество строк, но не содержимое, даже если заголовок не отображается.

Я попытался создать Datagrid из 6 столбцов и написал код для отображения Datagrid в свойстве TextChanged текстового поля со штрих-кодом.

Моя часть XAML:

 <Grid Grid.Column="0" Grid.Row="1" Margin="10">
                    <DataGrid CanUserAddRows="False"  Visibility="Hidden" Style="{StaticResource DataGridListing}" x:Name="DataGridSalesSuggestion" Height="{Binding ActualHeight, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type Grid}, Mode=FindAncestor}}" Width="{Binding ActualWidth, RelativeSource={RelativeSource AncestorLevel=1, AncestorType={x:Type Grid}, Mode=FindAncestor}}">

                        <DataGridTextColumn IsReadOnly="True" Width="1*" Header="{Binding barcode, Source={StaticResource Strings}}" x:Name="DataGridSuggestionItemName"  Binding="{Binding BarCode}"  />
                        <DataGridTextColumn IsReadOnly="True" Width="1*" Header="{Binding ItemCode, Source={StaticResource Strings}}" x:Name="DataGridSuggestionItemCode"  Binding="{Binding ItemCode}"  />
                        <DataGridTextColumn IsReadOnly="True" Width="1*" Header="{Binding itemName, Source={StaticResource Strings}}" x:Name="DataGridSuggestionBarcode"   Binding="{Binding ItemName}" />
                        <DataGridTextColumn IsReadOnly="True" Width="1*" Header="{Binding UnitQuantity, Source={StaticResource Strings}}" x:Name="DataGridSuggestionUnitQty"  Binding="{Binding UnitQuantity}"  />
                        <DataGridTextColumn IsReadOnly="True" Width="1*" Header="{Binding price, Source={StaticResource Strings}}" x:Name="DataGridColumnSuggestionPrice"  Binding="{Binding PricePerUnit}" />
                        <DataGridTextColumn IsReadOnly="True" Width="1*" Header="{Binding StockQty, Source={StaticResource Strings}}" x:Name="DataGridColumnSuggestionStockQty"  Binding="{Binding StockQuantity}" />

                    </DataGrid>
                </Grid>

Code-Behind:

private void TextboxBarCodeTextchanged(object sender, TextChangedEventArgs e)
    {
        Stock obj = DataGridSalesDetails.SelectedItem as Stock;


        DataGridSalesSuggestion.Items.Clear();
        for (int i = 0; i < AllStockList.Count; i++)
        {
            if (!string.IsNullOrEmpty(obj.BarCode))
            {
                if (AllStockList[i].BarCode.StartsWith(obj.BarCode, StringComparison.InvariantCultureIgnoreCase))
                {

                    Stock vend = AllStockList[i] as Stock;
                    DataGridSalesSuggestion.Items.Add(vend);
                    DataGridSalesSuggestion.Visibility = Visibility.Visible;
                }
            }
        }
        if (DataGridSalesSuggestion.Items.Count > 0)
        {
            DataGridSalesSuggestion.Visibility = Visibility.Visible;

        }
        if (string.IsNullOrEmpty(obj.BarCode))
        {
            DataGridSalesSuggestion.Visibility = Visibility.Collapsed;
        }
    }

Ожидаемый результат: эта таблица данных должна отображать содержимое, относящееся к тому, что я печатаю в текстовом поле со штрих-кодом.

Фактический результат - при получении этого кода отображается пустая таблица данных. даже заголовок не отображается. Кто-нибудь может помочь? Я новичок в .net

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...