在c#中实现DataGridView中自定义控件列

本文探讨如何在C#的DataGridView中实现自定义控件列,特别是当需要从不同表中获取数据时。通过禁用AutoGenerateColumns,创建TemplateColumn,并在ItemDataBound事件中绑定数据,实现了在新闻列表中展示新闻日期、标题和所属类别(通过下拉框显示)。关键在于使用DataBinder.Eval选取当前记录的字段值,并匹配下拉框列表中的相应项。
摘要由CSDN通过智能技术生成

昨天晚上临睡前写了长长的一大堆,后来睡下去的时候,包括今天早上眼睛睁开来,发觉昨晚写的东西里思路还是有点混乱的。于是,今天再来不补充篇。


要实现的内容先表述下:新闻标题列表页上,呈现如下

新闻日期1:新闻标题1【所属类别名称】

新闻日期2:新闻标题2【所属类别名称】

。。。


新闻标题和日期同属一张数据表中,类别ID也在该表中,但类别名称需要去另外张表中查找。昨晚文章中其实现在回头想来,关于这个问题它所提供的核心解决方案是利用SQL的联表查询语句,来一次性创建所需要的记录集。后来睡下去后回想了下,其实这个核心方法,与到底使用SqlDataReader还是DataSet其实是无关的。到是这个方法唯一需要注意的问题是,联表查询中所涉及的这两张,必须是来自同一个数据库的(数据库名相同)!至于到底是自己傻乎乎地循环输入表格,还是直接绑定在显示控件比如DataList、DataGridView上,这都可以。


那么,假如比如上面提到的无法联表查询的情况时,又要实现这样的功能时,该如何处理?


写到这里的时候,我忽然修改了下文章标题,将问题更加简单化和明确化为一种效果的实现:在c#中实现DataGridView中自定义控件列。能否实现这样的效果的话,基本上问题也就讲清楚了。上面的一大段可以忽略了。


DataGrid1.AutoGenerateColumns=false; //要自定义

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值