关于datagrid的使用以及动态修改,以及使用存储过程的介绍

原创 2004年09月25日 20:06:00
1.关于Datagrid,Datalist等数据绑定控件
由于vs.net是Codebehind的, 而quickstart 上的例子是代码与页面混合的,所以许多朋友有些疑惑。特别是有关template中如何触发事件的问题。
是这样,许多server control都有一个commandname属性
就是在.aspx中设置你那个edit的commandname,在.cs中用e.CommandName 得到

///aspx页面
<asp:DataList id=usersList runat="server" ></P><P><template name="ItemTemplate">
<asp:ImageButton id=ImageButton1 runat="server" ImageUrl="../images/edit.gif" AlternateText="编辑条目" CommandName="edit"></asp:ImageButton>
<asp:ImageButton id=ImageButton2 runat="server" ImageUrl="../images/delete.gif" AlternateText="删除条目" CommandName="delete"></asp:ImageButton>
<asp:Label id=lblRole runat="server" Text="<%# Container.DataItem%>" CssClass="Normal"></asp:Label>
</template></P><P><template name="EditItemTemplate">
<span class="Normal">email (cookie auth) or DOMAIN/username (Windows auth)</span><br />
<asp:Textbox id=userName width="200" cssclass="NormalTextBox" Text="<%# Container.DataItem %>" runat="server" />
<asp:LinkButton Text="Apply" CommandName="apply" cssclass="CommandButton" runat="server" ID=ApplyButton/>
</template></P><P></asp:DataList></P><P></P><P>///cs文件
protected void UsersList_ItemCommand (Object sender, DataListCommandEventArgs e)
{
if (e.CommandName == "edit") {</P><P> // Set editable list item index if "edit" button clicked next to the item
usersList.EditItemIndex = e.Item.ItemIndex;</P><P> // Repopulate the datalist control
BindData();
}
else if (e.CommandName == "apply") {</P><P> // Obtain the current portal settings
PortalConfigurationData portalConfig = PortalConfiguration.LoadSettings(PortalConfiguration.ConfigFilePath);</P><P> // Update user entry
portalConfig.SecurityRoles[roleIndex].Users[e.Item.ItemIndex] = ((TextBox) e.Item.FindControl("userName")).Text;</P><P> // Persist Settings back to disk
PortalConfiguration.PersistSettings(portalConfig);</P><P> // Disable editable list item access
usersList.EditItemIndex = -1;</P><P> // Repopulate the datalist control
BindData();
}
else if (e.CommandName == "delete") {</P><P> // Obtain the current portal settings
PortalConfigurationData portalConfig = PortalConfiguration.LoadSettings(PortalConfiguration.ConfigFilePath);</P><P> // Delete selected User
String[] users = new String[portalConfig.SecurityRoles][roleIndex].Users.Length-1];</P><P> for (int i=0, j=0; i < portalConfig.SecurityRoles[roleIndex].Users.Length; i++) {</P><P> if (i != e.Item.ItemIndex) {</P><P> users[j] = portalConfig.SecurityRoles[roleIndex].Users[i];
j++;
}
}</P><P> // Update Users
portalConfig.SecurityRoles[roleIndex].Users = users;</P><P> // Persist Settings back to disk
PortalConfiguration.PersistSettings(portalConfig);</P><P> // Ensure that item is not editable
usersList.EditItemIndex = -1;</P><P> // Repopulate list
BindData();
}
}
2.关于在asp.net中调用存储过程
例子如下:
SQLConnection myConnection = new SQLConnection(PortalConfiguration.Settings.DatabaseConnectionString);
SQLCommand myCommand = new SQLCommand("AddMessage", myConnection);</P><P> // Mark the Command as a SPROC
myCommand.CommandType = CommandType.StoredProcedure;</P><P> // Add Parameters to SPROC
SQLParameter parameterItemID = new SQLParameter("@ItemID", SQLDataType.Int, 4);
parameterItemID.Direction = ParameterDirection.Output;
myCommand.Parameters.Add(parameterItemID);</P><P> SQLParameter parameterTitle = new SQLParameter("@Title", SQLDataType.NVarChar, 100);
parameterTitle.Value = title;
myCommand.Parameters.Add(parameterTitle);</P><P> SQLParameter parameterBody = new SQLParameter("@Body", SQLDataType.NVarChar, 3000);
parameterBody.Value = body;
myCommand.Parameters.Add(parameterBody);</P><P> SQLParameter parameterParentID = new SQLParameter("@ParentID", SQLDataType.Int, 4);
parameterParentID.Value = parentId;
myCommand.Parameters.Add(parameterParentID);</P><P> SQLParameter parameterUserName = new SQLParameter("@UserName", SQLDataType.NVarChar, 100);
parameterUserName.Value = userName;
myCommand.Parameters.Add(parameterUserName);</P><P> SQLParameter parameterPortalID = new SQLParameter("@PortalID", SQLDataType.Int, 4);
parameterPortalID.Value = portalId;
myCommand.Parameters.Add(parameterPortalID);</P><P> SQLParameter parameterModuleID = new SQLParameter("@ModuleID", SQLDataType.Int, 4);
parameterModuleID.Value = moduleId;
myCommand.Parameters.Add(parameterModuleID);

关于datagrid的使用以及动态修改,以及使用存储过程的介绍

1.关于Datagrid,Datalist等数据绑定控件由于vs.net是Codebehind的, 而quickstart 上的例子是代码与页面混合的,所以许多朋友有些疑惑。特别是有关template...
  • luoboqingcai
  • luoboqingcai
  • 2004年09月25日 20:06
  • 892

datagrid自定义分页+高效存储过程

 datagrid自定义分页是datagrid的一个重要的功能,datagrid自定义分页主要用于数据源较大时。因为数据源大(记录多),加载时间长,反应慢,耗服务器的资源。而且每显示一页就要重新加载所...
  • littlehb
  • littlehb
  • 2007年04月12日 18:59
  • 1657

URL Schemes入门指南

想要更好地使用IOS 系统,对URL Schemes有一定了解是必须的。但因为 URL Schemes 的使用方式相对复杂,导致多数用户难以理解。而且大多数目前正在使用 URL Schemes 的人并...
  • iflychenyang
  • iflychenyang
  • 2017年02月09日 20:48
  • 478

iOS基本常用控件总结(UIView,UILabel,UIButton,UIImageView)

iOS开发中基本常用控件UIView, UILabel, UIButton, UIImageView的属性和方法的小总结
  • Macro_13
  • Macro_13
  • 2015年02月25日 10:22
  • 9386

存储过程DataGrid分页及注意点

sqlserver中的存储过程完整代码/****************************************************************** 存储过程名: GetCus...
  • qdzx2008
  • qdzx2008
  • 2005年12月18日 00:03
  • 790

存储过程DataGrid分页及注意点

     摘要:[原创]存储过程DataGrid分页及注意点 sqlserver中的存储过程完整代码/*************************************************...
  • jacklkc
  • jacklkc
  • 2005年08月09日 14:55
  • 402

什么时候该使用多线程,以及更恰当的多线程编程方法之讨论

大约在写了一年左右的应用程序以后开始发生了一些困惑,在我写的程序中很多使用了多线程,我们了解使用线程的必要性,但是什么时候使用,以及该如何更好使用和管理多线程方面,我觉得值得思考。先讨论一下CApp类...
  • vincent_lon
  • vincent_lon
  • 2006年07月21日 16:14
  • 6360

HBase Coprocessor 协处理器

›HBase Coprocessor –RegionObserver => RDBMS trigger 类似触发器 –EndpointCoproc => RDBMS stored procedur...
  • lovebyz
  • lovebyz
  • 2016年07月11日 16:47
  • 506

用于DataGrid MoveUp,MoveDown的存储过程

所有逻辑都写到了存储过程中,所以在使用的时候,直接调用存储过程即可,无需在前台代码中做过多的处理,但是一定要记得在绑定的sql语句中必须有order by orderno来排序--测试表if exis...
  • jbeauty
  • jbeauty
  • 2007年01月08日 16:14
  • 532

DataGrid 存储过程的分页

 dim connorthwind as sqlconnectiondim strsql as stringdim strselect as stringdim intstartindex as in...
  • jestar
  • jestar
  • 2008年07月31日 17:29
  • 283
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于datagrid的使用以及动态修改,以及使用存储过程的介绍
举报原因:
原因补充:

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