C#----DataGridView控件60招(三)

13. DataGridView指定单元格是否表示

14. DataGridView表头部单元格取得

15. DataGridView表头部单元格文字列设定

16. DataGridView选择的部分拷贝至剪贴板

17.DataGridView粘贴

18. DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息)

 

13. DataGridView指定单元格是否表示

[C#]


if  (DataGridView1 [ 2 , 0 ].Displayed &&  DataGridView1 [ 2 , 0 ].Visible)
{
    DataGridView1.CurrentCell 
=  DataGridView1[ 2 , 0 ];
}


14. DataGridView表头部单元格取得

[C#]

'DataGridView1第一列表头改变

DataGridView1.Columns[0].HeaderCell.Value = "第一列"

'DataGridView1第一行表头改变

DataGridView1.Rows[0].HeaderCell.Value = "第一行"

'DataGridView1左上角单元格值改变

DataGridView1.TopLeftHeaderCell.Value = "左上"

15. DataGridView表头部单元格文字列设定

更改列Header表示文字列

[C#]

'DataGridView1改变第一列头部单元格文字

DataGridView1.Columns[0].HeaderText = "第一列"

更改行Header表示文字列

[C#]

'DataGridView1行的头部单元格为序号


for  ( int  i  =   0 ; i  <  DataGridView1.Rows.Count - 1 ; i ++ )
{
    DataGridView1.Rows[i].HeaderCell.Value
= i.ToString();
}


'行的宽度自动调节

DataGridView1.AutoResizeRowHeadersWidth( DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders)

最左上Header单元格文字列

[C#]

'修改最左上单元格

DataGridView1.TopLeftHeaderCell.Value = "/"

16. DataGridView选择的部分拷贝至剪贴板

拷贝模式设定

[C#]

DataGridView1.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText

选中部分拷贝

[C#]

Clipboard.SetDataObject(DataGridView1.GetClipboardContent())

17.DataGridView粘贴

[C#]


代码
if  (DataGridView1.CurrentCell.Value  ==   null )
{
    
return ;
}
int  insertRowIndex  =  DataGridView1.CurrentCell.RowIndex;
string  pasteText = Clipboard.GetText();
if ( string .IsNullOrEmpty(pasteText))
{
    
return ;
}
string [] lines = pasteText.Split( ' \r ' );
bool  isHeader = true ;
foreach ( string  line  in  lines)
{    
    
if (isHeader)
    {
        isHeader
= false ;
    }
    
else
    {
        
string [] vals = line.Split( ' \t ' );
        
if  (vals.Length  -   1   !=  DataGridView1.ColumnCount)
        {
            
throw   new  ApplicationException( " 列数错误 " );
        }
        DataGridViewRow row 
=  DataGridView1.Rows[insertRowIndex];
        row.HeaderCell.Value
= vals[ 0 ];
        
for ( int  i = 0 ;i < row.Cells.Count - 1 ;i ++ )
        {
            row.Cells[i].Value
= vals[(i + 1 )];
        }
        insertRowIndex
+= 1 ;
    }
}


18. DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息)

[C#]

指定单元格

DataGridView1[0, 0].ToolTipText = "指定单元格"

指定列

DataGridView1.Columns[0].ToolTipText = "指定列"

指定行

DataGridView1.Rows[0].HeaderCell.ToolTipText = "指定行"

CellToolTipTextNeeded事件,在多个单元格使用相同的ToolTips的时候,可以用该事件,下例为显示当前单元格的行号和列号

[C#]

'CellToolTipTextNeeded事件


private   void  DataGridView1_CellToolTipTextNeeded( object  sender, DataGridViewCellToolTipTextNeededEventArgs e)
{
    e.ToolTipText 
=  e.RowIndex.ToString()  +   " , "   +  e.ColumnIndex.ToString();
}


你可能感兴趣的:(datagridview)