1 / 1 / 0
Регистрация: 11.06.2017
Сообщений: 5
1

[WPF] Как узнать в какой строке DataGrid был клик по кнопке?

01.07.2017, 22:14. Показов 1759. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть DataGrid, в нем есть столбец с кнопкой :
XML
1
2
3
4
5
6
7
8
 
<DataGridTemplateColumn Width="*" Header="Действие"  CanUserSort="False" >
                            <DataGridTemplateColumn.CellTemplate>
                                <DataTemplate>
                                    <Button x:Name="btnAuthVk" Content="{Binding ButtonStatus}" Click="btnAuthVk_Click"/>
                                </DataTemplate>
                            </DataGridTemplateColumn.CellTemplate>
                        </DataGridTemplateColumn>
Как узнать в какой строке был клик по кнопке?
Миниатюры
[WPF] Как узнать в какой строке DataGrid был клик по кнопке?  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.07.2017, 22:14
Ответы с готовыми решениями:

Как узнать, на какой PictureBox был сделан клик?
Здравствуйте, подскажите, пожалуйста, как узнать на какой pictureBox был сделан клик? pictureBox...

WPF как узнать по какой строке кликнули в RichTextBox
Здравствуйте. Имеется контрол richtextbox, заполненный словами на каждой строке - по одному слову...

Определить, по какой строке RichTextBox был совершен двойной клик
Здравствуйте, Подскажите как можно определить по какой именно строчке был сделан двойной клик в...

CheckGroup узнать по какой строке клик
Всем доброго времени суток. Что прописать в событие onClick что бы определить номер\текст CheckBox...

4
22 / 21 / 11
Регистрация: 13.11.2016
Сообщений: 75
02.07.2017, 01:33 2
Думаю, в Вашем случае можно сделать так:

C#
1
2
3
4
5
6
7
8
9
10
11
12
private void btnAuthVk_Click(object sender, RoutedEventArgs e)
{
    try
    {
         int index = DataGridName.SelectedIndex;
         //...
    }
    catch(Exception ex)
    { 
         // пишем лог
    }
}
1
1 / 1 / 0
Регистрация: 11.06.2017
Сообщений: 5
02.07.2017, 14:40  [ТС] 3
Это единственный способ? Просто если отменить выделение строки то такой подход не прокатит
0
45 / 45 / 32
Регистрация: 01.10.2012
Сообщений: 185
02.07.2017, 14:44 4
Если нужно получить объект из строки в которой расположена кнопка, то

C#
1
2
3
4
private void Button_Click(object sender, RoutedEventArgs e)
{
    var myType = ((FrameworkElement)sender).DataContext as MyType;
}
0
22 / 21 / 11
Регистрация: 13.11.2016
Сообщений: 75
02.07.2017, 20:37 5
Цитата Сообщение от QmQ Посмотреть сообщение
Просто если отменить выделение строки то такой подход не прокатит
Поясните, что значит отменить селект и в какой момент времени? Какой используете SelectionMode для DataGrid? Как привязываете коллекцию? Используете MVVM или нет? И зачем Вы отменяете селект? Может стоит не отменять его?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.07.2017, 20:37
Помогаю со студенческими работами здесь

Как определить на какой элемент был клик?
Создал свой элемент управления UserView состоящий из нескольких листбоксов и пиктурбоксов. Затем...

Как в WM_COMMAND узнать, по какой из кнопок произошел клик?
Если у меня в клиентской области расположены девять дочерних окон(&quot;Button&quot;), как в WM_COMMAND...

Как узнать какой submit был нажат?
Привет! На моей форме несколько кнопок submit Как узнать name той, что была нажата. Заранее...

Как узнать какой кнопке привязан макрос в ворде
как изменить текст на зеленый в ворде макрос: Sub Макрос1() ' ' Макрос1 Макрос ' ' ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru