重写datagrid(禁止对列宽进行拖拽)

原创 2005年05月28日 08:51:00

Public Class notCResizegrid

    Inherits System.Windows.Forms.DataGrid

 

#Region " Windows 窗体设计器生成的代码 "

 

    Public Sub New()

        MyBase.New()

 

        '该调用是 Windows 窗体设计器所必需的。

        InitializeComponent()

 

        ' InitializeComponent() 调用之后添加任何初始化

 

    End Sub

 

    'UserControl 重写 dispose 以清理组件列表。

    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)

        If disposing Then

            If Not (components Is Nothing) Then

                components.Dispose()

            End If

        End If

        MyBase.Dispose(disposing)

    End Sub

 

    'Windows 窗体设计器所必需的

    Private components As System.ComponentModel.IContainer

 

    '注意:以下过程是 Windows 窗体设计器所必需的

    '可以使用 Windows 窗体设计器修改此过程。

    '不要使用代码编辑器修改它。

    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()

        components = New System.ComponentModel.Container()

    End Sub

 

#End Region

 

    Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)

        Dim hti As System.Windows.Forms.DataGrid.HitTestInfo

        hti = Me.HitTest(e.X, e.Y)

        Select Case hti.Type

            Case DataGrid.HitTestType.ColumnResize

                Return

        End Select

        MyBase.OnMouseDown(e)

    End Sub

 

    Protected Overrides Sub OnMouseMove(ByVal e As System.Windows.Forms.MouseEventArgs)

        Dim hti As DataGrid.HitTestInfo = Me.HitTest(New Point(e.X, e.Y))

        '如果鼠标事件类型为改变列宽则返回

        If hti.Type = DataGrid.HitTestType.ColumnResize Then

            Cursor.Current = Cursors.Default

            Return

        End If

        MyBase.OnMouseMove(e)

    End Sub

End Class

’////////////////////////////    闵峰

Easyui-Datagrid—表头灵活拖动

用户界面设计的一个重要原则是用户应该总是感觉在控制软件而不是感觉被软件所控制。 操作上假设是用户–而不是计算机或软件–开始动作。用户扮演主动角色,而不是扮演被动角色。在需要自动执行任务时,要以允许用户...
  • u010293698
  • u010293698
  • 2015年09月14日 14:34
  • 4761

Flex DataGrid 自动设置列宽

最近项目中用datagrid. 不爽的是列太多了, 他又不能自动设置列宽, 一个一个设置也不知道多宽为妙, 于是写了个自动设置列宽的方法, 希望用到的可以参考, 不明白的留言, 呵呵!       ...
  • hongtashan11
  • hongtashan11
  • 2011年09月13日 17:04
  • 1573

DataGrid列宽随着内容自动变化

在使用vs2005时进行wince开发时,用Datagrid控件显示表格数据,当表格内容过多时,Datagrid控件单元格宽度并不足以用来完全显示表格中的数据内容,,只有自己每次去拉动分界线,来进行调...
  • dotnetlife
  • dotnetlife
  • 2007年11月20日 20:09
  • 3180

禁用WPF中DataGrid默认的鼠标左键拖动多选行的效果

最近项目上有需求要做DataGrid的行的拖拽功能, 有个很现实的问题就是鼠标左键按下是拖拽还是多选。查看了DataGrid的源码发现,系统内部会在鼠标按下的时候CaptureMouse,然后设置私有...
  • muzizongheng
  • muzizongheng
  • 2015年11月12日 11:34
  • 3190

JQuery EasyUI TreeGrid控件的使用——支持拖拽与禁止拖拽

最近在做一些前端的工作,很多用户要求的复杂前端可以使用jq easyui实现,开源且功能强大,相信很多人早就尝到甜头了。 下面进入正题,本篇博文主要介绍treegrid控件。官网DEMO有很多,可以借...
  • chenkai6529
  • chenkai6529
  • 2013年12月24日 14:58
  • 7307

easyui datagrid列实现动态拖拽列功能

easyui datagrid列实现动态拖拽列功能,测试在1.5.2版本下无报错
  • gxuehe
  • gxuehe
  • 2018年01月05日 20:43
  • 100

在asp.net中实现可拖动列的table

在asp.net中实现可拖动列的table =====================================================================  //可拖动...
  • weibingbing_net
  • weibingbing_net
  • 2012年03月09日 14:19
  • 466

一个可拖拽列宽表格demo

本demo使用jQuery包,实现表格列宽可拖拽功能,并实现页面reset时的重新布局。使用jQuery,方便函数的调用,给要处理的表格添加id后,直接调用$("#id").movedTh()即可方便...
  • andensy
  • andensy
  • 2010年04月21日 15:31
  • 4654

easyUI datagrid 列宽自适应(简单 图解)

响应数据格式: easyUI在html代码中结构: 发现了什么没有,我们的表头其实是一个td在td中有一个属性field那么我们就可以获得了; 以下就是自适应代码: //添加事件 ...
  • yhc13429826359
  • yhc13429826359
  • 2012年06月05日 10:43
  • 8311

自动调整datagrid列宽(根据行、列长度比较自动调整宽度)

using System;using System.Drawing;using System.Collections;using System.ComponentModel;using System....
  • tangyong12
  • tangyong12
  • 2006年05月24日 22:08
  • 2383
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:重写datagrid(禁止对列宽进行拖拽)
举报原因:
原因补充:

(最多只允许输入30个字)