как сохранить выбранную пользователем ширину столбца в datagridview

1

У меня есть приложение Windows, и я использую datagridview для отображения данных из базы данных, когда пользователь видит данные, которые он изменит ширину столбцов, и закрывает приложение при открытии в следующий раз, когда ширина столбца будет установлена по умолчанию, как сохранить пользователя введенная ширина.

  • 0
    ... а твой твой вопрос? А твой код есть?
Теги:

4 ответа

1
Лучший ответ

Bind datagridview с измененной шириной столбца ColumnWidthChanged of datagridview и устанавливает ширину каждого столбца в настройке (самый простой способ сохранить значение пользовательской настройки). Позже, снова загрузив datagridview, получите ширину, сохраненную в настройке, и установите ее в соответствующем столбце.

Вы можете связать событие с измененным столбцом:

void dataGridView1_ColumnWidthChanged(object sender,
    DataGridViewColumnEventArgs e)
{
    Properties.Settings.Default.Column1= dataGridView1.Columns[1].Width;
    // Set the width of every column of datagridview here
    Properties.Settings.Default.Save();// Save setting after setting all column width
}

Теперь вы можете использовать эту настройку при загрузке datagridview:

dataGridView1.Columns[1].Width = Properties.Settings.Default.Column1;
  • 1
    @ downvoter: Хотите прокомментировать?
0

Вы можете использовать событие OnFormClosing; например:

Private Sub onformclosing(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.OnFormClosing
    Dim x As Integer = DataGridView1.ColumnCount
    Dim widths As Integer()
    For i As Integer = 0 To x Step 1
        widths(i) = DataGridView1.Columns(i).Width
    Next
End Sub

Затем вы можете записать значения widths() в файл конфигурации или настроек. Вам также нужно будет написать число столбцов (в моем примере, переменную x), чтобы вы могли воссоздать количество столбцов. Надеюсь это поможет :)

0

Вы можете выполнить это несколькими способами, наиболее распространенным и быстрым будет использование ApplicationSettingsBase. Чтобы увидеть пример, просмотрите его, поскольку он очень детализирован в том, что вы хотите сделать. Несколько других способов включают:.XML, файл ApplicationConfiguration, реестр (не рекомендуется - только для параметров приложения), файл или сохранять эти настройки в базе данных и извлекать их, кто когда-либо вошел в систему.

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

В другой заметке я бы использовал XML лично, если вы не используете базу данных для пользователей. Классы для XML отлично в.Net и могут быть быстро завершены в классе для чтения/записи ваших настроек.

-1

Существует несколько разных способов, но проще всего обработать событие Закрыто (или Закрытие) для Формы и сохранить каждую ширину во встроенный файл настроек.

Затем вы можете "восстановить" эти ширины в методе инициализации для формы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню