C# winform datagridview rowheader 添加行标题的方法


        #region 写行号事件
//在DataGridView控件上选择RowPostPaint事件
private void dgvJointList_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
((DataGridView)sender).fillRowHeaderIndex(e);
}
#endregion


        #region DataGridView的RowPostPaint事件中使用的添加行标题的公用方法
/// <summary>
/// DataGridView的RowPostPaint事件中使用的添加行标题的公用方法
/// </summary>
/// <param name="dgv">DataGridView名</param>
/// <param name="e">DataGridViewRowPostPaintEventArgs事件名</param>
public static void fillRowHeaderIndex(this DataGridView dgv, DataGridViewRowPostPaintEventArgs e)
{
Rectangle rectangle = new Rectangle
(
e.RowBounds.Location.X,
e.RowBounds.Location.Y,
dgv.RowHeadersWidth - 4,
e.RowBounds.Height
);
TextRenderer.DrawText
(
e.Graphics,
(e.RowIndex + 1).ToString(),
dgv.RowHeadersDefaultCellStyle.Font,
rectangle,
dgv.RowHeadersDefaultCellStyle.ForeColor,
TextFormatFlags.VerticalCenter | TextFormatFlags.Right
);
}
#endregion






































  名称 说明
 1 DrawText(IDeviceContext,
String, Font, Point, Color)
使用指定的设备上下文、字体和颜色在指定位置绘制指定文本。
 2 DrawText(IDeviceContext,
String, Font, Rectangle, Color)
使用指定的设备上下文、字体和颜色在指定界限中绘制指定文本。
 3 DrawText(IDeviceContext,
String, Font, Point, Color, Color)
使用指定的设备上下文、字体、颜色和背景色在指定位置绘制指定文本。
 4 DrawText(IDeviceContext,
String, Font, Point, Color, TextFormatFlags)
使用指定的设备上下文、字体、颜色和格式说明在指定位置绘制指定文本。
 5 DrawText(IDeviceContext,
String, Font, Rectangle, Color, Color)
使用指定的设备上下文、字体、颜色和背景色在指定界限中绘制指定文本。
 6 DrawText(IDeviceContext,
String, Font, Rectangle, Color, TextFormatFlags)
使用指定的设备上下文、字体、颜色和格式说明在指定界限中绘制指定文本。
 7 DrawText(IDeviceContext,
String, Font, Point, Color, Color, TextFormatFlags)
使用指定的设备上下文、字体、颜色、背景色和格式说明在指定位置绘制指定文本
 8 DrawText(IDeviceContext,
String, Font, Rectangle, Color, Color, TextFormatFlags)
使用指定的设备上下文、字体、颜色、背景色和格式说明在指定界限中绘制指定文本。

C# winform datagridview rowheader 添加行标题的方法

时间: 2024-11-04 17:16:05

C# winform datagridview rowheader 添加行标题的方法的相关文章

C# winform datagridview 无需点击两次即可编辑内嵌控件的方法和删除默认的空行的方法

? 1 2 3 4 //点击一下即可对DataGridView中内嵌控件进行编辑,不需要二次点击 dgv.EditMode =DataGridViewEditMode.EditOnEnter; //DataGridView无默认行 dgv.AllowUserToAddRows = false; C# winform datagridview 无需点击两次即可编辑内嵌控件的方法和删除默认的空行的方法

C# winform DataGridView 操作大全

C# DataGridView控件动态添加新行 DataGridView控件在实际应用中非常实用,特别需要表格显示数据时.可以静态绑定数据源,这样就自动为DataGridView控件添加相应的行.假如需要动态为DataGridView控件添加新行,方法有很多种,下面简单介绍如何为DataGridView控件动态添加新行的两种方法: 方法一: int index=this.dataGridView1.Rows.Add(); this.dataGridView1.Rows[index].Cells[

C# WinForm DataGridView界面设计小技巧

在窗口中表格是非常常见的数据显示形式,所以界面的展示效果非常重要,通过多次的使用之后发现C# WinForm DataGridView控件默认的显示样式非常之反人类,不过好在可视化操作只需几个简单的属性修改就能得到很好的效果. 下面请看生成的默认属性的DataGridView显示: 非常之反人类的表格. 开始修改下面几个通过名字就能够读懂的属性(当然是通过VS属性窗口修改,也可以在初始化代码中手动修改DataGridView的属性): AllowUserToAddRows=False; //不同

[转]WinForm DataGridView 绑定泛型List(List&lt;T&gt;)/ArrayList不显示的原因和解决

背景:无意间遇到了一个不大不小的问题,希望对一些遇到的人有所帮助! 一.问题 WinForm DataGridView 绑定泛型List (List<T>)/ArrayList不显示,UI 代码如下: using System; using System.Collections.Generic; using System.Data; using System.Data.OleDb; using System.IO; using System.Windows.Forms; namespace W

WinForm DataGridView 绑定泛型List(List&lt;T&gt;)/ArrayList不显示的原因和解决

背景:无意间遇到了一个不大不小的问题,希望对一些遇到的人有所帮助! 一.问题 WinForm DataGridView 绑定泛型List (List<T>)/ArrayList不显示,UI 代码如下: using System; using System.Collections.Generic; using System.Data; using System.Data.OleDb; using System.IO; using System.Windows.Forms; namespace W

C# winform DataGridView 常见属性

C# winform DataGridView 属性说明① 取得或者修改当前单元格的内容 ② 设定单元格只读 ③ 不显示最下面的新行 ④ 判断新增行 ⑤ 行的用户删除操作的自定义 ⑥ 行.列的隐藏和删除 ⑦ 禁止列或者行的Resize ⑧ 列宽和行高以及列头的高度和行头的宽度的自动调整 ⑨ 冻结列或行 ⑩ 列顺序的调整 ⑪ 行头列头的单元格⑫ 剪切板的操作 ⑬ 单元格的ToolTip的设置 ⑭ 右键菜单(ContextMenuStrip)的设置 ⑮ 单元格的边框. 网格线样式的设定 ⑯ 单元格表

C# winform dataGridView

1 private void btnConn_Click(object sender, EventArgs e) 2 { 3 //定义连接字符串 4 string constr = "server=.;database=DBTest;uid=sa;pwd=sa;"; 5 SqlConnection con = new SqlConnection(constr); 6 try 7 { 8 con.Open(); 9 SqlCommand cmd = new SqlCommand(&quo

Winform中打开网页页面的方法

1.首先比较简单的我们知道有类似的方法如下 System.Diagnostics.Process.Start("http://www.baidu.com"); 2.比较灵活一点,可以定义窗口大小,我们要实现网页中脚本打开页面的方法,即window.open 那么,我们必然会想,如何调用页面的脚本呢?其实可以利用WebBrowser来实现 //连接 string url ="http://www.baidu.com"; //定义脚本 string script =@&

Android peferenceActivity 自定义标题简单方法

Android peferenceActivity 自定义标题简单方法 peferenceActivity 完全使用定义好的布局. 因此不能简单象其它好窗口进行自定,现在我们需要加 一个自定义标题,比如象其它窗口一样加一个统一topbar. 假设这个topbar的布局是 title.xml 一.标准自定义标题栏方法 Android 提供自定义标题栏方法 我们简单实现. @Override protected void onCreate(Bundle savedInstanceState) { f