Режим редактирования строки сетки данных Silverlight
-
05-07-2019 - |
Вопрос
У меня есть сетка данных Silverlight с одним редактируемым столбцом.В этом столбце есть поле со списком.Чтобы открыть комбинацию, мне нужно нажать на ячейку три раз.Один раз, чтобы выбрать строку, один раз, чтобы войти в режим редактирования, и один раз, чтобы открыть комбинацию.
ИМХО, это действительно плохой UX, поэтому я бы хотел, чтобы строка переходила в режим редактирования, когда пользователь щелкает строку или наводит указатель мыши, и разрешать открытие комбинации одним щелчком мыши.
В этом случае строка выйдет из режима редактирования, если пользователь уберет мышь с строки.
Это возможно?Как лучше всего подойти к этому?
Спасибо, Марк
Решение
установка datagrid.selectedIndex решит проблему
Другие советы
Простой способ:обработайте DataGrid_MouseLeftButtonUp и создайте желаемое поведение.
void MyDataGrid_MouseLeftButtonUp(sender , e)
{
if (MyDataGrid.SelectedItem != null) //ensure we have current item
{
//set current column
MyDataGrid.CurrentColumn = MyDataGrid.Columns[4];
//call begin edit
MyDataGrid.BeginEdit();
//now open combobox
MyComboBox.IsDropDownOpen = true; // a.)
}
}
Надеюсь, вы уловили идею.
а) *здесь я не уверен, что 100% работает.(и, конечно же, вам нужна ссылка на MyComboBox (элемент управления ComboBox, определенный в шаблоне столбца)*
Удачи
Рлодина