Nano Hash - криптовалюты, майнинг, программирование

VB.NET Datagridview — изменить текущую ячейку

Я впервые задаю вопрос, постараюсь быть ясным. Я создал datagridview в vb.net, который содержит 3 столбца и 5 строк. Мои столбцы содержат заголовки заданий. Каждая строка содержит информацию об этих вакансиях: имя, фамилия, общество, номер телефона, почта.

Это выглядит как :

             | J1 | J2 | J3
----------------------------
firstname    | x  | y  | z
lastname     | x1 | y1 | z1
society      | x2 | y2 | z2
phone number | x3 | y3 | z3
mail         | x4 | y4 | z4

Когда я редактирую имя задания 1 (x), я хотел бы войти в ячейку с фамилией этого задания (x1), нажав вкладку. В настоящее время, когда я нажимаю вкладку, я вхожу в ячейку первого имени второго задания (y).

Я попытался изменить текущую ячейку после события datagridview.CellEndEdit. Я заметил, что выбрана ячейка (x1), но клавиша табуляции меняет мою отредактированную текущую ячейку на «обычную текущую ячейку» (y).

Как я могу запретить клавише табуляции изменять мою отредактированную текущую ячейку? Спасибо.

03.02.2016

  • Вы идете против условностей. Почему бы не выложить ряды горизонтально? Вы не сможете использовать привязку данных таким образом. 03.02.2016
  • Я знаю, что не следую правилам, но мой менеджер хочет такой функциональности. 03.02.2016

Ответы:


1

Попробуйте создать свой собственный элемент управления DataGridView, чтобы вы могли переопределить операцию ProcessCmdKey:

Public Class DataGridViewEx
  Inherits DataGridView

  Protected Overrides Function ProcessCmdKey(ByRef msg As Message, keyData As Keys) As Boolean
    If keyData = Keys.Tab Then
      Me.ProcessDownKey(keyData)
      Return True
    End If
    Return MyBase.ProcessCmdKey(msg, keyData)
  End Function
End Class
03.02.2016
  • Спасибо ЛарсТек, это работает очень хорошо! Я заменил Me.ProcessDownKey(keyData) программной модификацией currentCell. 03.02.2016
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..