Как получить информацию об отправителе объекта - PullRequest
1 голос
/ 14 июля 2020

Я сейчас пытаюсь получить доступ к информации, которая передается через отправителя объекта.

Приложение, над которым я работаю, - это приложение winforms с list view.
I хотите получить номер ListViewItem, на который нажал пользователь.
ListView item, который я нажал, верен при отладке.

Однако я не знаю, как получить нужную мне информацию из object sender.
Я хочу получить доступ к ListViewItem number,

посмотрите на опубликованное изображение ListViewItem: {24919} в данном случае

так Я могу использовать этот номер в качестве индекса при поиске в базе данных.

Есть ли у кого-нибудь быстрый совет, чтобы я мог продолжить свою программу?

private void InvoiceListView_SelectedIndexChanged(object sender, EventArgs e)
{
    //Connect to db and search based on the the listviewItemnumber.
}

В настоящее время отправитель объекта содержит метод;

Ответы [ 2 ]

3 голосов
/ 14 июля 2020

Вы можете набрать sender и работать с результатом:

private void InvoiceListView_SelectedIndexChanged(object sender, EventArgs e)
{
    if (!(sender is ListView listView)) return;
    //work with the listView object from here:
    listView.Items = ...
}
2 голосов
/ 14 июля 2020

Вы можете выбрать элемент, преобразовав sender в ListView, а затем получить соответствующее значение, как указано ниже:

private void listView1_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
{
ListView lw = (ListView)sender;
            
            foreach(ListViewItem lvi in lw.SelectedItems )
            {
                MessageBox.Show(lvi.SubItems[0].Text);
            }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...