Видимость текста ячейки заголовка строки DataGridView - PullRequest
0 голосов
/ 11 октября 2018

У меня есть DataGridView в моем WinForms приложении.По сути, я хочу ввести там 2D-данные или что-то в этом роде.Это значит, что я хочу, чтобы имена столбцов и строк были названы.И я так и сделал.Но тогда возникла проблема.Когда с именами столбцов все в порядке, имена строк обычно не видны.Например:

enter image description here

Код, который я использую для «украшения» DataGridView:

private void BeautifyTable(TableView tableView)
{
    foreach (DataGridViewRow row in tableView.Rows)
    {
        row.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
    }
    foreach (DataGridViewColumn col in tableView.Columns)
    {
        col.HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
        col.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
        col.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
    }
}

TableViewэто класс, созданный мной, и он наследуется от DataGridView.

Так что теперь мой вопрос будет таким: есть ли способ как-то заставить эти названия / заголовки строк появляться обычным образом (в данном конкретном случаеэто: s0, s1, s2.., но они как бы вырезаны с левой стороны).

PS Есть ли хороший способ "растянуть" колонны?Я имею в виду, что если бы у меня было 10 столбцов, они бы заполнили всю ширину DataGridView, но если бы я добавил (я делаю это динамически) 5, то было бы 15 столбцов, но они бы подходили, только ширина каждого столбцауменьшить?

Ответы [ 3 ]

0 голосов
/ 11 октября 2018

Попробуйте скрыть эти стрелки, установив RowHeadersVisible в False в свойствах сетки данных в Form.cs [Design] или просто добавьте приведенный ниже код.

Me.DataGridView1.RowHeadersVisible = False
0 голосов
/ 11 октября 2018

Я действительно нашел лучший ответ самостоятельно.

Вы можете установить WitdthSizeMode также для заголовков строк, например:

tableView.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders;

И вот результат:

enter image description here

0 голосов
/ 11 октября 2018

Увеличение ширины заголовка строки:

dataGridView1.RowHeadersWidth = 
    dataGridView1.RowHeadersWidth * 2; // or another value
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...