C#中datagridview使用tooltip控件顯示單元格內(nèi)容的方法
本文實(shí)例講述了C#中datagridview使用tooltip控件顯示單元格內(nèi)容的方法。分享給大家供大家參考,具體如下:
代碼如下:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Data.SqlClient; namespace Exam2 { public partial class MainForm : Form { private int cellColumnIndex = -1;//列索引 private int cellRowIndex = -1;//行索引 public MainForm() { InitializeComponent(); //設(shè)置提示工具的相關(guān)屬性值 this.dgvUserInfo.ShowCellToolTips = false; this.toolTip.AutomaticDelay = 0; this.toolTip.OwnerDraw = true; this.toolTip.ShowAlways = true; this.toolTip.ToolTipTitle = " "; this.toolTip.UseAnimation = true; this.toolTip.UseFading = true; } /// <summary> /// 顯示用戶信息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MainForm_Load(object sender, EventArgs e) { string sql = "select 用戶ID=userID,用戶名=name,用戶登錄名=username,用戶密碼=userPassword from userInfo"; SqlConnection conn = DBHelper.GetConnection(); SqlDataAdapter adapter = new SqlDataAdapter(sql,conn); DataSet ds = new DataSet(); adapter.Fill(ds); this.dgvUserInfo.DataSource = ds.Tables[0]; } private void dgvUserInfo_CellMouseLeave(object sender, DataGridViewCellEventArgs e) { this.toolTip.Hide(this.dgvUserInfo);//鼠標(biāo)移出單元格后隱藏提示工具 } private void dgvUserInfo_CellMouseEnter(object sender, DataGridViewCellEventArgs e) { //判斷選擇單元格的有效性 if (e.RowIndex < 0 || e.ColumnIndex < 0) { return; } this.toolTip.Hide(this.dgvUserInfo); this.cellColumnIndex = e.ColumnIndex;//獲取列索引 this.cellRowIndex = e.RowIndex;//獲取行索引 if (this.cellColumnIndex >= 0 && this.cellRowIndex >= 0) { Point mousePos = PointToClient(MousePosition);//獲取鼠標(biāo)當(dāng)前的位置 //獲取鼠標(biāo)移入的單元格中的值 string tip = this.dgvUserInfo[this.cellColumnIndex, this.cellRowIndex].Value.ToString(); this.toolTip.Show(tip, this.dgvUserInfo, mousePos);//在指定位置顯示提示工具 } } //繪制提示工具 private void toolTip_Draw(object sender, DrawToolTipEventArgs e) { e.Graphics.FillRectangle(Brushes.AliceBlue, e.Bounds); e.Graphics.DrawRectangle(Pens.Chocolate, new Rectangle(0, 0, e.Bounds.Width - 1, e.Bounds.Height - 1)); e.Graphics.DrawString(this.toolTip.ToolTipTitle + e.ToolTipText, e.Font, Brushes.Red, e.Bounds); } } }
更多關(guān)于C#相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《C#常見控件用法教程》、《WinForm控件用法總結(jié)》、《C#數(shù)據(jù)結(jié)構(gòu)與算法教程》、《C#面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》及《C#程序設(shè)計(jì)之線程使用技巧總結(jié)》
希望本文所述對大家C#程序設(shè)計(jì)有所幫助。
相關(guān)文章
C# Dictionary和SortedDictionary的簡介
今天小編就為大家分享一篇關(guān)于C# Dictionary和SortedDictionary的簡介,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-10-10C#隱藏手機(jī)號、郵箱等敏感信息的實(shí)現(xiàn)方法
這篇文章主要介紹了C#隱藏手機(jī)號、郵箱等敏感信息的實(shí)現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下2016-09-09C#實(shí)現(xiàn)的Win32控制臺線程計(jì)時(shí)器功能示例
這篇文章主要介紹了C#實(shí)現(xiàn)的Win32控制臺線程計(jì)時(shí)器功能,結(jié)合實(shí)例形式分析了C#基于控制臺的時(shí)間操作相關(guān)技巧,需要的朋友可以參考下2016-08-08使用C#實(shí)現(xiàn)讀取系統(tǒng)配置文件的代碼實(shí)例講解
這篇文章主要介紹了使用C#實(shí)現(xiàn)讀取系統(tǒng)配置文件的代碼實(shí)例,使用到了ConfigurationManager類,需要的朋友可以參考下2015-12-12C#實(shí)現(xiàn)對Json字符串處理實(shí)例
這篇文章主要介紹了C#實(shí)現(xiàn)對Json字符串處理,通過一個(gè)json實(shí)例分析了C#進(jìn)行JSON操作的方法,需要的朋友可以參考下2014-09-09