在后代码里创建DataGrid控件

在后代码里创建DataGrid控件
【孟宪会之精彩世界】
在后代码里创建DataGrid控件

本文介绍如何用代码创建DataGrid,并且有四个绑定列和一个模板列,支持排序功能。

代码如下:

C#

CreateDataGrid.aspx

<xmp><%@ Page language="c#" EnableViewState = "false"Codebehind="CreateDataGrid.aspx.cs" AutoEventWireup="true" Inherits="aspxWebCS.myDataGrid" %> <script runat="server"> public void Page_Load(Object sender,EventArgs e){ CreateDataGridForm.Controls.Add(MakeGrid()); } </script> <html> <head> 用代码创建DataGrid <meta name="GENERATOR" content="Microsoft Visual Studio 7.0"> <meta name="CODE_LANGUAGE" content="C#"> <meta name="vs_defaultClientScript" content="JavaScript"> <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> </head> <body ms_positioning="GridLayout">
用代码创建DataGrid
</body> </html> </xmp>

CreateDataGrid.aspx.cs

<xmp> using System; using System.Configuration; using System.Data; using System.Data.SqlClient; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.Drawing; /// <summary> /// CreateDataGrid 的摘要说明。 /// </summary> namespace aspxWebCS { public class myDataGrid : Page { public String sql = "Select FirstName,LastName,HomePhone,Title FROM Employees"; public DataGrid mygrid = new DataGrid(); public String SortExpression; /// <summary> /// 创建一个模板列和一个列模板 /// </summary> public TemplateColumn tm = new TemplateColumn(); public ColumnTemplate mycol = new ColumnTemplate(); //返回DataView public DataView CreateDataSource () { string strSql; strSql = "Data Source=.;Initial Catalog=Northwind;User Id=sa;Password=;"; SqlConnection conn = new SqlConnection(strSql); SqlDataAdapter db_sqladaptor = new SqlDataAdapter(sql,conn); DataSet ds = new DataSet(); db_sqladaptor.Fill(ds,"Employees"); DataView myView = ds.Tables["Employees"].DefaultView; //myView.Sort=SortExpression; //Response.Write(sql); return myView; } /// <summary> /// 处理排序 /// </summary> /// /// public void Sort_Grid(Object sender, DataGridSortCommandEventArgs e) { SortExpression = e.SortExpression.ToString(); Session["SortField"]=SortExpression.Trim(); if(Session["Order"]==null) Session["Order"] = "ASC"; Session["Order"] = (Session["Order"].ToString()=="DESC")?"ASC":"DESC"; if(Session["SortField"]==null) Session["SortField"] = "FirstName"; sql += " ORDER BY "+Session["SortField"].ToString() + " " + Session["Order"].ToString(); mygrid.DataSource = CreateDataSource(); mygrid.DataBind(); } /// <summary> /// 创建和设置DataGrid属性,这里的属性设置为固定值,但也可以动态设置 /// </summary> /// <returns></returns> public DataGrid MakeGrid() { mygrid.CellPadding=2; mygrid.Attributes.Add("align","center"); mygrid.CellSpacing=0; mygrid.Width=500; mygrid.BorderWidth=1; mygrid.BorderColor=ColorTranslator.FromHtml("Black"); mygrid.AutoGenerateColumns=false; mygrid.ForeColor=ColorTranslator.FromHtml("Black"); mygrid.Font.Size=9; mygrid.Font.Name="宋体"; mygrid.AllowSorting=true; ///sort命令的事件处理器 mygrid.SortCommand += new DataGridSortCommandEventHandler(Sort_Grid); ///设置headerstyle mygrid.HeaderStyle.BackColor=ColorTranslator.FromHtml("Gold"); mygrid.HeaderStyle.ForeColor=ColorTranslator.FromHtml("Black"); mygrid.HeaderStyle.Font.Name="宋体"; mygrid.HeaderStyle.Font.Size=9; mygrid.HeaderStyle.Font.Bold=true; mygrid.HeaderStyle.HorizontalAlign=HorizontalAlign.Center; ///设置alternating style mygrid.AlternatingItemStyle.BackColor=ColorTranslator.FromHtml("Silver"); mygrid.AlternatingItemStyle.ForeColor=ColorTranslator.FromHtml("Black"); ///设置itemstyle mygrid.ItemStyle.HorizontalAlign=HorizontalAlign.Left; ///创建绑定列和属性 BoundColumn FirstName = new BoundColumn(); BoundColumn LastName = new BoundColumn(); BoundColumn HomePhone = new BoundColumn(); BoundColumn Title = new BoundColumn(); FirstName.HeaderText="名字"; FirstName.DataField="FirstName"; FirstName.SortExpression="FirstName"; LastName.HeaderText="姓"; LastName.DataField="LastName"; LastName.SortExpression="LastName"; HomePhone.HeaderText="电话"; HomePhone.DataField="HomePhone"; HomePhone.SortExpression="HomePhone"; Title.HeaderText="职务"; Title.DataField="Title"; Title.SortExpression="Title"; mygrid.Columns.AddAt(0, FirstName); mygrid.Columns.AddAt(1, LastName); mygrid.Columns.AddAt(2, HomePhone); mygrid.Columns.AddAt(3, Title); ///设置模板列属性和ItemStyle模板 tm.HeaderText="**删除信息**"; tm.HeaderStyle.HorizontalAlign=HorizontalAlign.Center; tm.ItemStyle.BackColor = ColorTranslator.FromHtml("#FFF778"); tm.ItemStyle.HorizontalAlign=HorizontalAlign.Center; ///创建列模板。 ///列模板从ITemplate继承 tm.ItemTemplate = mycol; mygrid.Columns.AddAt(4, tm); ///绑定和返回 mygrid.DataSource = CreateDataSource(); mygrid.DataBind(); return mygrid; } } /// ColumnTemplate 从ITemplate继承。 /// "InstantiateIn"定义子控件的属于谁 public class ColumnTemplate : ITemplate { public void InstantiateIn(Control container) { Label myLabel = new Label(); myLabel.Text="点击删除"; CheckBox mycheckbox = new CheckBox(); container.Controls.Add(myLabel); container.Controls.Add(mycheckbox); } } } </xmp>

结果如下:

优快云_Dev_Image_2003-11-4004091.gif

<iframe scrolling="no" marginheight="0" marginwidth="0" src="http://banner21.com/b21.dll?Type=IFrame&amp;amp;id=207" frameborder="0" height="0" width="0"></iframe>
vb找不到Datagrid控件 <br /> <br />         做一个关于分页显示记录的例子,用到了DataGrid控件,突然发现在部件里找不到。由于当时是在宿舍,没有联网,没办法上网搜索解决方法,正好有同学也遇到相同问题,就问了一下是怎么解决的。大概知道了解决办法,就是找到datagrid的ocx文件,注册一下。但是同学忘记了是哪个文件了,所以我是留到第二天才解决的。<br /><br />         如果不是装的精简版vb,那么一般是有DataGrid控件的,但是找不到怎么办呢?可以找一台能够添加DataGrid控件 阅读详情

相关推荐

Swing 基於JTable的DataGrid示例

基於Swing JTable的DataGrid 含有按鈕 進度條

java datagrid控件_Java中基于AJAX技术的DataGrid控件编程

简介在传统的Web开发中,每次DataGrid控件填充或更新都相应于一次到服务器的数据回馈。但是,借助于AJAX技术,我们可以在不进行表单提交(刷新)的情况下即可以填充DataGrid控件。在本文中,我们通过一个简单示例并借助于一个DropDownList控件的帮助来讨论如何达到这一目的。在这个例子中,我们使用了一个DropDownList控件;一旦改变DropDownList的值,它即用相应的城...

weixin_35056701的博客 425

立创开源Link Hub多功能USB扩展坞:CH339F主控+4层板设计,实测网口/存储性能

本文深度评测了立创开源Link Hub多功能USB扩展坞,其采用CH339F主控芯片与4层PCB板设计,并严格进行阻抗匹配。实测表明,该扩展坞的USB接口与microSD读卡器性能均接近USB 2.0理论极限,百兆以太网口转换效率高,性能损失极小。设计上注重电源保护与信号完整性,是一个兼顾稳定性与成本的高完成度开源硬件项目。

weixin_36173034的博客 162

动态生成DataGrid并添加到表格里

首次写关于技术方面的文章,一时竟不知道该怎么写。不过正好,我做的项目里有一个要根据员工的工资方案个数来显示员工的工资明细。于是就把这个动态生成DataGrid的方法贴了出来。随便写的,写的不好,仅供大家参考。(有不足的地方,大家尽管提哦!) 1CreateDataGrid()方法,动态生成多个DataGrid#regionCreateDataGrid()方法,...

weixin_34275734的博客 183

MATLAB绘图中文乱码终极解决方案:从方框到清晰显示的全面指南

本文提供了MATLAB绘图中文乱码的全面解决方案。针对中文显示为方框的问题,从单次绘图的临时字体设置,到通过修改默认配置实现一劳永逸,再到系统级字体排查与Java环境配置,给出了详细的步骤指南。文章还涵盖了字体名称指定、图像导出防丢失以及跨平台协作等高级技巧,帮助用户彻底解决中文乱码困扰。

weixin_29093017的博客 618

AIR780E二次开发点灯(LuatOS)

Air780E的LuatOS点灯教程,二次开发教程,可用于所有ec618平台,无需SDK

rootuseres的博客 1万+

createDatagrid with pagination

Create DataGrid To load data from remote server, you should set 'url' peoperty, where server will return JSON format data. see datagrid document for more about the data format. 1 <table id="tt...

weixin_30772105的博客 153

振镜控制卡硬件接口揭秘:XY2-100/SL2-100协议对比

本文对比分析了工业振镜控制领域两种主流数字通信协议XY2-100和SL2-100的硬件接口差异与应用场景。XY2-100作为开放式协议兼容性强,采用LVDS差分信号传输,适用于激光打标等中高精度场景;SL2-100为半封闭协议,采用RS485差分信号,专为高速响应场景设计。文章详细解析了两种协议的引脚定义、通信机制和性能参数,指出XY2-100适配多品牌振镜且调试简单,SL2-100则更适合Nutfield专用设备的高速高精度需求。最后提供了接口调试的实操建议和选型逻辑,强调应根据具体应用场景的精度、速度和

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 652

在DataGrid里内嵌控件

在DataGrid里内嵌控件 在单元格里面内嵌控件,是一个迷人的功能。但是要用好这一招可并不像想象中那么容易。互联网上关于在DataGrid里面内嵌ComboBox的文章能把人看晕了。但是效果却不怎么理想。所以我认为要用好内嵌控件这招必须从根子上入手。DataGridColumnStyle这个类可能并不是非常引人注目,但是它的两个派生类我想大家都是非常熟悉的,那就是DataGridText

自由是冠军 1846

半导体材料仿真:二维材料仿真_(1).二维材料的基本概念

在半导体材料仿真领域,二维材料因其独特的物理和化学性质而受到广泛关注。二维材料,也称为二维纳米材料,是指在二维空间(通常是平面)上具有原子级厚度的材料。这些材料的厚度通常在几个纳米甚至单个原子层的范围内,使得它们在电子、光学、热学和机械性能上表现出与传统三维材料显著不同的特性。本节将详细介绍二维材料的基本概念,包括它们的分类、结构、性质以及在半导体材料仿真中的应用。

2401_87715305的博客 1546

YOLOv11改进策略【Neck】| SEAM:分离和增强注意模块,解决复杂场景下的小目标遮挡问题

本文记录的是利用 SEAM 模块优化 YOLOv11 的目标检测网络模型。的设计出发点在于解决复杂场景下的人脸遮挡问题,相当于是小目标被其他物体部分遮挡时,传统方法因特征缺失导致检测精度下降的问题。该模块通过增强未遮挡区域的特征响应并补偿被遮挡区域的信息损失,提升模型对遮挡小目标的检测能力。YOLO-FaceV2: A Scale and Occlusion Aware Face DetectorSEAM模块(Separated and Enhancement Attention Module)的设计出发点

Limiiiing的博客 2281

WPF 控件专题 DataGrid 控件详解

WPF 控件专题 DataGrid 控件详解

^@^lemon tea^@^ 9458

RK3588开发板NPU加速YOLO目标检测完整实战教程

🚀 RK3588开发板NPU加速YOLO目标检测实战 本文详细介绍了如何在瑞芯微RK3588开发板上利用内置NPU加速YOLO目标检测的全流程: 1️⃣ 环境准备:配置RKNPU2 SDK和aarch64交叉编译器,搭建Ubuntu开发环境 2️⃣ 模型转换:从ONNX格式转换为专用RKNN模型,适配NPU硬件特性 3️⃣ 性能对比:NPU推理将处理时间从833ms降至50ms以下,帧率提升16倍 4️⃣ 实战应用:支持图像/视频流/摄像头实时检测,提供完整编译和运行命令 关键优势:专为边缘AI设计的6T

FJN110的博客 931

WPF中DataGrid控件内Button的Command和CommandParameter的绑定

场景:视频上传功能,上传列表使用DataGrid控件,视频有不同的状态对应不同的操作,DataGrid中最后一列为操作列,里面是Button控件。希望点击Button后执行对应的操作,但是设置Button的 Command="{Binding VideoOperationCommand}"后触发不了操作。 XAML代码如下:

jumtre的专栏 2万+

Redhawk: dynamic ir drop分析(Clock Buffer Clustering)

在dynamic分析中,ir drop问题多出现在三种情况下,缺power mesh,缺power switch,clock cell过于密集。 前两种情况通过选中具体instance查看min res path都比较容易分析出来,而且大部分问题都出现在channel里,这里不多做赘述。 clock cell过于密集这是观察结果,缺少报告支持,这里分享一下分析方法。 首先,选中压降超过signoff标准的instance,(Results->List of Worst Instance DVD中

m0_61544122的博客 5278

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

如何在DataGrid某列中加入ComboBox控件

1.建立一个标准的Windows应用程序.。2.向窗体中加入一个DataGrid控件.。5.修改数据库的连接串为一可用链接.。

biyusr的专栏 1695

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: Windows Longhorn,图形功能大幅加强
下一篇: 实现类似Windows资源管理器的DataGrid
java2000_test
博客等级 码龄19年 10粉丝 320原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值