首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

,datagrid按钮列有关问题

2012-01-30 
救命啊,datagrid按钮列问题。我在datagrid上加了个按钮列//添加选择列ButtonColumnbcnewSystem.Web.UI.Web

救命啊,datagrid按钮列问题。
我在   datagrid   上加了个按钮列

//添加选择列
ButtonColumn   bc   =   new   System.Web.UI.WebControls.ButtonColumn();
bc.HeaderText   =   "选择 ";
bc.CommandName   =   "Select ";
bc.Text   =   " <img   border= '0 '   src= 'Images/view.gif '   /> ";
this.dag_Gateways.Columns.Add(bc);

再绑定,之前已经给定了数据源并添加了BoundColumn。

this.dag_Gateways.DataBind();

而且已经添加了selectedindexchanged事件了
this.dag_Gateways.SelectedIndexChanged   +=   new   System.EventHandler(this.dag_Gateways_SelectedIndexChanged);

为什么调试时点击这个按钮,不能执行这个事件,用itemcommand也不行生成的代码也是这样的

<a   href= "javascript:__doPostBack( 'dag_Gateways$_ctl4$_ctl0 ', ' ') ">  

<script   language= "javascript ">
<!--
function   __doPostBack(eventTarget,   eventArgument)   {
var   theform;
if   (window.navigator.appName.toLowerCase().indexOf( "netscape ")   >   -1)   {
theform   =   document.forms[ "SendGateway "];
}
else   {
theform   =   document.SendGateway;
}
theform.__EVENTTARGET.value   =   eventTarget.split( "$ ").join( ": ");
theform.__EVENTARGUMENT.value   =   eventArgument;
theform.submit();
}
//   -->
</script>  

//咋整啊

[解决办法]
你要实现什么功能?代码多了看的昏
[解决办法]
你要调用的是脚本事件,给它加onclick才行
[解决办法]
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName = SelectComand)
{
GridView1.SelectedIndex = e.CommandSource;
//是不是这个意思?
}
}
[解决办法]
问题很清楚了,就是动态添加的按钮列没能触发dataGrid的SelectedIndexChanged

=========

不用喊了,没人救得了你 :P

很正常,即使是老鸟,对于动态添加动态也无法自由控制之 ....

建议不使用此方式

非要使用,建议先仔细阅读

创建动态数据输入用户界面
http://www.microsoft.com/china/msdn/library/webservices/asp.net/dnasppDynamicUI.mspx#ELC



[解决办法]
关键是要深刻理解 ASP.NEt 控件和页面事件生命周期 顺序

热点排行