Как использовать запрос LINQ для listview.SelectedIndex Val, чтобы получить значения данных из выбранной строки? - PullRequest
0 голосов
/ 31 декабря 2018

Я использую Entity Framework Core 5, Visual Studios 2017.

Что мне нужно, настолько просто, насколько это должно быть, это выполнить запрос LINQ для значения строки listview1.selectedIndex, чтобы загрузить второй ListView2с данными столбца.

Как в простом выражении.Не могли бы вы дать мне значение UserLogin связанной строки ListView1.SelectedIndex, чтобы я знал, какое значение UserId UserLogin фильтровать в операторе LINQ.Мне нужно это для загрузки listview2.ItemSource с UserLogin UserId 'ноль или много' col_TitleName и col_TtsRaw Rows?

XAML:

<ListView Name="UserLoginsListView"
                   DataContext="{Binding Title}"
                  SelectionChanged="YourLibraryListView_OnSelectionChanged">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <TextBlock Text="{Binding}"/>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>

XAML ListView для того, чтобы я хотел загрузить UserLogin's TitleName и TtsRaw(ноль или много) строк.

<ListView Name="TitlesListView" Background="Goldenrod" 
                  Height="250" Margin="5" DataContext="{Binding Title}">
            <ListView.ItemTemplate>
                <DataTemplate>
                    <StackPanel>
                        <StackPanel Orientation="Horizontal">
                            <TextBlock Text="Title:" />
                            <TextBlock Text="{Binding TitleName}" />
                        </StackPanel>
                        <StackPanel Orientation="Horizontal">
                            <TextBlock Text="Content:" />
                            <TextBlock Text="{Binding TtsRaw}" />
                        </StackPanel>
                    </StackPanel>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>

Модель контекста:

public class User //Entity-> Table
{
    public int UserId { get; set; } 
    public string UserLogin { get; set; } 
    public string UserPwd { get; set; } 

    public List<Title> Titles { get; set; } //Navigation property-
                   //depicts this is a dependency property (-Many) plural

    public override string ToString()
    {         
        return UserId + " " + UserLogin + " ";
    }
}

public class Title //Entity-> Table
{
    public int TitleId { get; set; }
    public string TitleName { get; set; }
    public string TtsRaw { get; set; }
    public string DirPath { get; set; }

    public int UserId { get; set; }
    public User User { get; set; }

    public override string ToString()
    {          
        return UserId + " " + TitleName + "- " + TtsRaw;
    }
}

Код за попытку:

 private void Page_Loaded(object sender, RoutedEventArgs e)
    {
        using (var db = new PRSappContext())
        {
            UserLoginsListView.ItemsSource = db.Titles.ToList();
            TitlesListView.ItemsSource = db.Titles.ToList();
        }
    }

    public int SelectedItemIndex;
    private void YourLibraryListView_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        SelectedItemIndex = UserLoginsListView.SelectedIndex;
        YourLibraryListView_SelectedIndex_TextBox.Text = SelectedItemIndex.ToString();

        //I am Stuck here**** Simply trying to get UserLogin from selected //Index row
        var SelectedsUserId = UserLoginsListView.SelectedIndex
            .Where(u => u.UserId ==  ) //?? Stumped
            .;
    }

Заранее спасибо!Адам

...