Setting ToolTip for DataGridView automatically created columns

后端 未结 2 1630
时光说笑
时光说笑 2020-12-22 08:18

I would like to programatically set tooltips to automatically generated columns in a DataGridView. I was trying to use AutoGeneratingColumn event (

相关标签:
2条回答
  • 2020-12-22 08:56

    tooltiptext for specific cell:

    DataGridView1.Rows[3].Cells["colnameX"].ToolTipText = " hover and see me";
    

    adding tooltip to dynamically added rows specific cell

    private void DataGridView1_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
    {
        for (int index = e.RowIndex; index <= e.RowIndex + e.RowCount - 1; index++)                           
        {
            DataGridViewRow row = DataGridView1.Rows[index];
            row.Cells["colnameX"].ToolTipText = " hover and see me";
    
        }
    }
    
    0 讨论(0)
  • 2020-12-22 09:00

    I managed to solve it this way:

    void payloadDataGrid_AutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
    {
        string tooltip = null;
    
        switch (e.Column.Header.ToString())
        {
            case "Column 1":
                tooltip = "Tooltip 1";
                break;
            case "Column 2":
                tooltip = "Tooltip 2";
                break;
        }
    
        if (tooltip != null)
        {
            var style = new Style(typeof(DataGridCell));
            style.Setters.Add(new Setter(ToolTipService.ToolTipProperty, tooltip));
            e.Column.CellStyle = style;
        }
    }
    
    0 讨论(0)
提交回复
热议问题