关于DataGrid的,有n个人回答都不能满足要求啊, 高手ggjj进来看看 怎么在DataGrid中是某一列可以进行超连接! (通过静态属性编辑是可以的!)加HyperLinkColumn就OK了啊! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 no1:DataGrid1.Columns[4].HeaderText = "哈啊!" no2:this.dgData.DataSource = this.dtTable.DefaultView; 第二:int ColCount=datagrid.Columns.Count; 你把this去掉试一下,可能是指向不明。还不可以,则是你的datatable中是否有数据(你跟踪确定一下)。可能是你的datatable中根本就没有值。Columns你写错了!! 关于绑定 datagrid.datasource=datatable;和datagrid.datasource=datatable.defaultview;只是直接绑定到datagrid的上的话是没有区别的。要是你在datagrid中放了<columns><TemplateColumn><ItemTemplate>……的话,绑定值到控件上,就要用datatable.defaultview;第三:在datagrid中加<asp:HyperLinkColumn HeaderText="Select an Item" DataNavigateUrlField="IntegerValue"第一:有下划线??试试通过HeaderStyle 属性来改变一下! DataNavigateUrlFormatString="detailspage.aspx?id={0}" DataTextField="PriceValue" DataTextFormatString="{0:c}" Target="_blank"/> 首先, 先谢过楼上好友们.回答如下:1.我用的是Web控件的DataGrid2."加HyperLinkColumn就OK了啊!"---我是再程序中动态加入不同的表到DataGrid中,所以你的方法好像不能实现.要是固定的话是可以的.3."no1:DataGrid1.Columns[4].HeaderText = "哈啊!"" 你的这步跟我下一步想法是一样的, 现在关键是/*********** " 紧接1, 当执行this.dgData.DataSource = this.dtTable; this.dgData.DataBind(); 后, 执行 int nTotal = this.dgData.Colums.Count; //为0!!!!!!""""************************************************************/4."no2:this.dgData.DataSource = this.dtTable.DefaultView;"--------我照着把后面的.DefaultView加了上去.但是不行出现错误:类型“System.Data.DataView”必须标记为 Serializable 或者具有 ReferenceConverter 以外的 TypeConverter,才能被放置在视图状态中。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Web.HttpException: 类型“System.Data.DataView”必须标记为 Serializable 或者具有 ReferenceConverter 以外的 TypeConverter,才能被放置在视图状态中。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 堆栈跟踪: /************************************************[HttpException (0x80004005): 类型“System.Data.DataView”必须标记为 Serializable 或者具有 ReferenceConverter 以外的 TypeConverter,才能被放置在视图状态中。] System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +1479 System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +677 System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +170 System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +256 System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +281 System.Web.UI.LosFormatter.SerializeInternal(TextWriter output, Object value) +102 System.Web.UI.Page.OnFormRender(HtmlTextWriter writer, String formUniqueID) +143 System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer) +35 System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output) +395 System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +243 System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +72 System.Web.UI.Control.Render(HtmlTextWriter writer) +7 System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +243 System.Web.UI.Page.ProcessRequestMain() +1900***************************************************************************/ -------------我用的表是自己再程序中创建的, 不是已创建好的.5.最后一位老哥; 其实再我No2. 中执行,再DataGrid表中是可以实事看到数据的,这说明表中肯定有数据存在只是" int nTotal = this.dgData.Colums.Count; //为0!!!!!! "这也太奇怪了吧, 数据再DataGrid里面显示正确, 列数也对, 为什么使用上述代码不能获取它当前的总列数,当然如果获取正确的话, 那么超连接就很好实现了"DataGrid1.Columns[4].SortExpression= "......."请高手们继续go on 上面的错误已经查明, 现在主要是下面问题了:"其实再我No2. 中执行,再DataGrid表中是可以实事看到数据的,这说明表中肯定有数据存在但是" int nTotal = this.dgData.Colums.Count; //怎么会为0!!!!!! "这也太奇怪了吧, 数据再DataGrid里面显示正确, 列数也对, 为什么使用上述代码不能获取它当前的总列数,当然如果获取正确的话, 那么超连接就很好实现了"DataGrid1.Columns[4].SortExpression= "......."" comboBox.SelectIndex=0~~~有什么意义 用c#开发软件,需要什么基础的知识 如何设置字符串中的子字符串的颜色 请问C#的处理机制/原理,是不是类似于MFC的消息循环? 高手进来看看,怎么在c#声明这个非托管dll的函数 请教:在c#(做web的)中怎么弹出对话框? udp组播问题 JoinMulticastGroup无效参数 钩子的使用 如何更改vs.net已建站点的地址? VS.net奇怪的问题 我想做一个树的递归删除!(求教) 分页的问题???(求教)
你把this去掉试一下,可能是指向不明。还不可以,则是你的datatable中是否有数据(你跟踪确定一下)。可能是你的datatable中根本就没有值。Columns你写错了!!
关于绑定 datagrid.datasource=datatable;和datagrid.datasource=datatable.defaultview;只是直接绑定到datagrid的上的话是没有区别的。要是你在datagrid中放了<columns><TemplateColumn><ItemTemplate>……的话,绑定值到控件上,就要用datatable.defaultview;
第三:在datagrid中加<asp:HyperLinkColumn
HeaderText="Select an Item"
DataNavigateUrlField="IntegerValue"
第一:有下划线??试试通过HeaderStyle 属性来改变一下!
DataNavigateUrlFormatString="detailspage.aspx?id={0}"
DataTextField="PriceValue"
DataTextFormatString="{0:c}"
Target="_blank"/>
2."加HyperLinkColumn就OK了啊!"---我是再程序中动态加入不同的表到DataGrid中,所以你的方法好像不能实现.要是固定的话是可以的.
3."no1:DataGrid1.Columns[4].HeaderText = "哈啊!""
你的这步跟我下一步想法是一样的, 现在关键是
/***********
" 紧接1, 当执行this.dgData.DataSource = this.dtTable;
this.dgData.DataBind();
后, 执行
int nTotal = this.dgData.Colums.Count; //为0!!!!!!""""
************************************************************/
4."no2:this.dgData.DataSource = this.dtTable.DefaultView;"
--------我照着把后面的.DefaultView加了上去.但是不行出现错误
:
类型“System.Data.DataView”必须标记为 Serializable 或者具有 ReferenceConverter 以外的 TypeConverter,才能被放置在视图状态中。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Web.HttpException: 类型“System.Data.DataView”必须标记为 Serializable 或者具有 ReferenceConverter 以外的 TypeConverter,才能被放置在视图状态中。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 堆栈跟踪:
/************************************************[HttpException (0x80004005): 类型“System.Data.DataView”必须标记为 Serializable 或者具有 ReferenceConverter 以外的 TypeConverter,才能被放置在视图状态中。]
System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +1479
System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +677
System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +170
System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +256
System.Web.UI.LosFormatter.SerializeValue(TextWriter output, Object value) +281
System.Web.UI.LosFormatter.SerializeInternal(TextWriter output, Object value) +102
System.Web.UI.Page.OnFormRender(HtmlTextWriter writer, String formUniqueID) +143
System.Web.UI.HtmlControls.HtmlForm.RenderChildren(HtmlTextWriter writer) +35
System.Web.UI.HtmlControls.HtmlForm.Render(HtmlTextWriter output) +395
System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +243
System.Web.UI.Control.RenderChildren(HtmlTextWriter writer) +72
System.Web.UI.Control.Render(HtmlTextWriter writer) +7
System.Web.UI.Control.RenderControl(HtmlTextWriter writer) +243
System.Web.UI.Page.ProcessRequestMain() +1900
***************************************************************************/
-------------我用的表是自己再程序中创建的, 不是已创建好的.
5.最后一位老哥;
其实再我No2. 中执行,再DataGrid表中是可以实事看到数据的,这说明表中肯定有数据存在
只是" int nTotal = this.dgData.Colums.Count; //为0!!!!!! "
这也太奇怪了吧, 数据再DataGrid里面显示正确, 列数也对, 为什么使用上述代码不能获取它当前的总列数,当然如果获取正确的话, 那么超连接就很好实现了
"DataGrid1.Columns[4].SortExpression= "......."
请高手们继续go on
现在主要是下面问题了:"
其实再我No2. 中执行,再DataGrid表中是可以实事看到数据的,这说明表中肯定有数据存在
但是" int nTotal = this.dgData.Colums.Count; //怎么会为0!!!!!! "
这也太奇怪了吧, 数据再DataGrid里面显示正确, 列数也对, 为什么使用上述代码不能获取它当前的总列数,当然如果获取正确的话, 那么超连接就很好实现了
"DataGrid1.Columns[4].SortExpression= "......."
"