如何设置datagrid中的DropDownList显示的是绑定记录的当前数据?

gqxm 2003-08-25 11:11:16
datagrid中包含一个EditItemTemplate是DropDownList的列,现我想在点击编辑时,DropDownList显示的是绑定记录的当前数据,而不是DropDownList的第一条数据,请问语句应如何写?

datagrid代码:
<asp:DataGrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 8px; POSITION: absolute; TOP: 8px" runat="server" CssClass="f9black" BackColor="White" ForeColor="Black" Width="200px" Height="256px" BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" CellPadding="4" GridLines="Vertical" AutoGenerateColumns="False" DataKeyField="id">
<SelectedItemStyle Font-Bold="True" ForeColor="White" BackColor="#CE5D5A"></SelectedItemStyle>
<AlternatingItemStyle BackColor="White"></AlternatingItemStyle>
<ItemStyle BackColor="#F7F7DE"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="White" BackColor="#6B696B"></HeaderStyle>
<FooterStyle BackColor="#CCCC99"></FooterStyle>
<Columns>
<asp:EditCommandColumn ButtonType="PushButton" UpdateText="确定" CancelText="取消" EditText="编辑">
<HeaderStyle Width="20px"></HeaderStyle>
<ItemStyle Font-Size="Small"></ItemStyle>
</asp:EditCommandColumn>
<asp:BoundColumn Visible="False" DataField="id" HeaderText="序号"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="排序序号">
<HeaderStyle Width="138px"></HeaderStyle>
<ItemTemplate>
<asp:Label id=Label8 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.序号") %>'>
</asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList id="DropDownList1" runat="server">
<asp:ListItem Value="1">1</asp:ListItem>
<asp:ListItem Value="2">2</asp:ListItem>
<asp:ListItem Value="3">3</asp:ListItem>
<asp:ListItem Value="4">4</asp:ListItem>
<asp:ListItem Value="5">5</asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle HorizontalAlign="Right" ForeColor="Black" BackColor="#F7F7DE" Mode="NumericPages"></PagerStyle>
</asp:DataGrid>

另外,如果我想把这个DropDownList1禁用,为什么以下语句不可以实现,DropDownList0是nothing。

Private Sub DataGrid1_EditCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles DataGrid1.EditCommand
DataGrid1.EditItemIndex = CInt(e.Item.ItemIndex)
Dim DropDownList0 As DropDownList = CType(e.Item.FindControl("DropDownList1"), DropDownList)
DropDownList0.Enabled = False
bindgrid()
End Sub
...全文
141 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ruyedian 2003-08-25
  • 打赏
  • 举报
回复
放在绑定事件里面
private void DataGrid1_ItemDataBound(sender as object, e as DataGridItemEventArgs)
if e.item.itemindex<>-1 then
Dim DropDownList0 As DropDownList = CType(e.Item.FindControl("DropDownList1"), DropDownList)
DropDownList0.Enabled = False
end if
end sub
gqxm 2003-08-25
  • 打赏
  • 举报
回复
chnking(kent):
等我试试。

to acewang(**^o^**):

Dim DropDownList0 As DropDownList = CType(e.Item.FindControl("DropDownList1"), DropDownList)
DropDownList0.Enabled = False

这段代码应放在哪里?才可以实现我的目的?
chnking 2003-08-25
  • 打赏
  • 举报
回复
上面的代码有点错误,下面正确:

private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.EditItem)
{
DropDownList myDropDownList = (DropDownList)e.Item.FindControl("DropDownList1");
string str = ((DataRowView)e.Item.DataItem)["id"].ToString();
myDropDownList.Items.FindByText(str).Selected = true;
}
}
acewang 2003-08-25
  • 打赏
  • 举报
回复
点击编辑的时候dropdownlist1还没生成呢,当然是nothing
chnking 2003-08-25
  • 打赏
  • 举报
回复
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.EditItem)
{
DropDownList myDropDownList = (DropDownList)e.Item.FindControl("DropDownList1");
string str = ((DataRowView)e.Item.DataItem)["id"].ToString();
myDropDownList.SelectedItem = myDropDownList.Items.FindByText(str);
}
}
第1章 空 第2章 ASP.NET运行模型 21.如何在页面应用javascript脚本-示例1 21.如何在页面应用javascript脚本-示例2 22.如何实现从服务器端向页面动态添加javascript脚本-示例1 22.如何实现从服务器端向页面动态添加javascript脚本-示例2 24.如何处理多页面重定向到同一页面后的返回问题 25.如何用Response.Redirect方法传递汉字 29.如何利用输出缓存技术缓存整个页面 30.如何利用片段缓存技术对用户控件进行缓存 31.如何利用数据缓存技术提高程序的性能 33.如何实现当页面产生错误时重定向到自定义错误界面 35.如何在程序读写Web.config文件 37.如何使用CSS文件定义控件的样式 38.如何启用和禁用ViewState保存状态信息的功能 39.如何应用IsPostBack控制页面的加载 41.如何使用Trace对象进行跟踪调试(页面级) 42.如何使用#Include语法将文件添加到页面 43.如何使用编程的方式处理异常信息 44.如何将网页错误信息写入事件日志 第3章 常用Web服务控件 46.如何使用Label控件动态显示文本信息 47.如何实现当鼠标移到控件时显示提示信息 48.如何在Web应用程序实现快捷键功能(使用脚本实现) 48.如何在Web应用程序实现快捷键功能(使用属性实现) 49.如何设置页面上控件的Tab键顺序 50.如何实现用回车键代替Tab键的功能 51.如何为按钮键添加消息框 52.Button、LinkButton和ImageButton服务控件的区别及应用 54.如何使用CheckBox和CheckBoxList控件(CheckBox示例) 54.如何使用CheckBox和CheckBoxList控件(CheckBoxList示例) 55.如何使用RadioButton和RadioButtonList控件(RadioButton示例) 55.如何使用RadioButton和RadioButtonList控件RadioButtonList示例) 56.如何使用Panel控件操作一组控件 57.如何使用Table控件组织页面的内容 58.如何实现DropDownList控件选项的添加、删除等操作 59.如何实现间接改变DropDownList控件的当前选项 60.如何实现两个或多个DropDownList控件的联动 61.如何实现ListBox控件选项的上移、下移、添加和删除操作 62.如何实现ListBox控件选项的双击事件 63.如何动态设置ListBox控件各选项的背景颜色 64.如何在页面动态创建控件 65.如何为HTML服务器控件的事件添加自定义方法 第4章 验证控件 67.如何使用RequiredFieldValidator控件验证用户是否输入信息 68.如何使用RegularExpressionValidator控件验证E-mail地址和邮编等格式 69.如何使用RangeValidator控件验证输入的信息是否在指定范围内 70.如何使用CompareValidator控件对两个输入控件比较验证 71.如何使用CustomValidator控件自定义验证格式 72.如何使用ValidationSummary控件总结所有验证控件的错误信息 73.如何创建自定义功能的验证控件 74.如何禁用服务器控件的验证功能 75.如何控制页面部分验证控件有效 76.如何实现控件即时验证功能 77.如何使用验证控件综合验证用户注册页面 78.如何验证DataGrid控件的编辑列 81.如何使用验证控件验证日期类型的输入(CompareValidator) 81.如何使用验证控件验证日期类型的输入(CustomerValidator) 81.如何使用验证控件验证日期类型的输入(RegularValidator) 第5章 高级Web控件 82.如何在网页使用Calendar Web控件显示和选择日期 83.如何在Calendar Web控件控制个别日的内容及显示 84.如何在Calendar Web控件控制用户日期选定 86.如何使用XML控件显示XML文件和进行XSLT转换 87.如何使用AdRotator Web控件制作广告发布程序-示例1 87.如何使用AdRotator Web控件制作广告发布程序-示例2 88.如何创建用户控件 89.如何将Web窗体转换成用户控件 90.如何实现动态加载用户控件 92.如何使用TabStrip Web和MultiP
第2章 ASP.NET运行模型
21.如何在页面应用javascript脚本-示例1
21.如何在页面应用javascript脚本-示例2
22.如何实现从服务器端向页面动态添加javascript脚本-示例1
22.如何实现从服务器端向页面动态添加javascript脚本-示例2
24.如何处理多页面重定向到同一页面后的返回问题
25.如何用Response.Redirect方法传递汉字
29.如何利用输出缓存技术缓存整个页面
30.如何利用片段缓存技术对用户控件进行缓存
31.如何利用数据缓存技术提高程序的性能
33.如何实现当页面产生错误时重定向到自定义错误界面
35.如何在程序读写Web.config文件
37.如何使用CSS文件定义控件的样式
38.如何启用和禁用ViewState保存状态信息的功能
39.如何应用IsPostBack控制页面的加载
41.如何使用Trace对象进行跟踪调试(页面级)
42.如何使用#Include语法将文件添加到页面
43.如何使用编程的方式处理异常信息
44.如何将网页错误信息写入事件日志
第3章 常用Web服务控件
46.如何使用Label控件动态显示文本信息
47.如何实现当鼠标移到控件时显示提示信息
48.如何在Web应用程序实现快捷键功能(使用脚本实现)
48.如何在Web应用程序实现快捷键功能(使用属性实现)
49.如何设置页面上控件的Tab键顺序
50.如何实现用回车键代替Tab键的功能
51.如何为按钮键添加消息框
52.Button、LinkButton和ImageButton服务控件的区别及应用
54.如何使用CheckBox和CheckBoxList控件(CheckBox示例)
54.如何使用CheckBox和CheckBoxList控件(CheckBoxList示例)
55.如何使用RadioButton和RadioButtonList控件(RadioButton示例)
55.如何使用RadioButton和RadioButtonList控件RadioButtonList示例)
56.如何使用Panel控件操作一组控件
57.如何使用Table控件组织页面的内容
58.如何实现DropDownList控件选项的添加、删除等操作
59.如何实现间接改变DropDownList控件的当前选项
60.如何实现两个或多个DropDownList控件的联动
61.如何实现ListBox控件选项的上移、下移、添加和删除操作
62.如何实现ListBox控件选项的双击事件
63.如何动态设置ListBox控件各选项的背景颜色
64.如何在页面动态创建控件
65.如何为HTML服务器控件的事件添加自定义方法
第4章 验证控件
67.如何使用RequiredFieldValidator控件验证用户是否输入信息
68.如何使用RegularExpressionValidator控件验证E-mail地址和邮编等格式
69.如何使用RangeValidator控件验证输入的信息是否在指定范围内
70.如何使用CompareValidator控件对两个输入控件比较验证
71.如何使用CustomValidator控件自定义验证格式
72.如何使用ValidationSummary控件总结所有验证控件的错误信息
73.如何创建自定义功能的验证控件
74.如何禁用服务器控件的验证功能
75.如何控制页面部分验证控件有效
76.如何实现控件即时验证功能
77.如何使用验证控件综合验证用户注册页面
78.如何验证DataGrid控件的编辑列
81.如何使用验证控件验证日期类型的输入(CompareValidator)
81.如何使用验证控件验证日期类型的输入(CustomerValidator)
81.如何使用验证控件验证日期类型的输入(RegularValidator)
第5章 高级Web控件
82.如何在网页使用Calendar Web控件显示和选择日期
83.如何在Calendar Web控件控制个别日的内容及显示
84.如何在Calendar Web控件控制用户日期选定
86.如何使用XML控件显示XML文件和进行XSLT转换
87.如何使用AdRotator Web控件制作广告发布程序-示例1
87.如何使用AdRotator Web控件制作广告发布程序-示例2
88.如何创建用户控件
89.如何将Web窗体转换成用户控件
90.如何实现动态加载用户控件
92.如何使用TabStrip Web和MultiPage Web控件制作选项卡式页面
93.如何使用Toolbar Web控件制作工具条式页面
94.如何识别Toolbar Web控件哪个按钮激发的ButtonClick事件
95.如何使用TreeView Web控件
96.如何在TreeView Web控件动态添加、删除TreeNode节点
100.如何使用TreeView Web控件的TreeNodeType进行外观控制
101.如何使用TreeView Web控件绑定XML文件-示例1
101.如何使用TreeView Web控件绑定XML文件-示例2
第6章 数据服务控件
103.如何使用Repeater控件显示数据
104.如何使用Repeater控件的模板
105.如何实现Repeater控件的分页
106.如何使用DataList控件显示数据
107.如何实现选择DataList控件的条目后显示该条目的详细信息
108.如何实现DataList控件的编辑功能
109.如何对DataList控件使用样式
110.如何在DataList控件创建多个列
111.如何实现DataList控件的分页功能
112.如何在DataGrid添加自动编号的功能
113.如何控制DataGrid绑定绑定数据类型为日期的显示格式
114.如何把DataGrid某一列的统计值显示在页脚
115.如何在DataGrid让不同条件的行显示不同的背景颜色
116.如何在DataGrid实现分页功能
117.如何实现鼠标移到DataGrid控件的某一行时改变该行的背景
118.如何在DataGrid控件实现自定义分页功能
119.如何在DataGrid弹出一个详细信息窗口-示例1
119.如何在DataGrid弹出一个详细信息窗口-示例2
120. 如何在DataGrid控件添加CheckBox控件列
121.如何为DataGrid控件的删除列添加确认框
122.如何使用DataGrid控件实现主细表
123.如何实现DataGrid控件的双向排序
124.如何动态的显示·隐藏DataGrid控件的某一列
125.如何实现DataGrid控件DropDownList控件的绑定
126.如何在DataGrid控件实现数据项的编辑、更新、取消
127.如何在DataGrid控件删除最后一页的最后一记录
128.如何把数据数据以Excel文件的格式在显示浏览器
129.如何给DataGrid控件添加个标题并实现分类显示
130.如何实现DataGrid控件DropDownList控件的联动
131.DataGrid控件使用综合举例
第7章 数据绑定技术
132.如何单值绑定到控件的属性
133.如何将DataTable绑定DataGrid Web控件
134.如何将DataSet绑定DataGrid Web控件
135.如何将DataView绑定DataGrid Web控件
136.如何将DataReader绑定DataGrid Web控件
137.如何将表的列绑定DropDownList Web控件
138.如何使用DataBinder.Eval()方法进行数据绑定
139.如何将ArrayList绑定ListBox Web控件
140.如何将Hashtable绑定到RadioButtonList Web控件
141.如何将XML作为数据绑定到控件
第8章 数据库设计
143.ASP.NET应用程序如何实现与SQL Server数据库的连接
144.ASP.NET应用程序如何实现与ACCESS数据库的连接
146.如何使用ADO.NET在数据库执行SQL语句
147.如何使用DataReader快速访问SQL Server数据
148.如何使用DataAdapter将数据填充到DataSet并显示出来
149.如何使用DataTable对象存储数据库表
150.如何对DataTable进行检索和排序
151.如何使用DataView进行数据排序和检索
152.如何在DataSet的DataTable间建立父子表关系
154.如何实现SQL Server数据库操作的异常捕捉和处理
155.如何将数据数据填充到XML文件
157.如何使用Web.config配置数据库连接字符串
161.如何编写访问数据库的通用代码
162.如何在SQL Server数据编程获取用户表的数目和名称
163.如何获取SQL Server服务器端所有数据库列表
164.如何保存图片文件到SQL Server数据
165.如何将数据保存的图片显示到页面
166.如何在插入记录后获得记录的标识号
167.如何解决ADO.NET访问ACCESS数据库出现“操作必须使用一个可更新的查询”的问题
168.如何从EXCEL文件读取数据
169.如何备份和恢复数据
第9章 ASP.NET安全策略
第10章 常用功能及函数集
180.如何在ASP.NET获得客户端IP地址
181.如何取得一定范围内的随机数
182.如何取得文件的扩展名示例一
182.如何取得文件的扩展名示例二
183.如何把字符串型数据转换为整型
184.如何取得当前系统时间
185.如何取得指定的年份有多少天
186.如何取得客户端的鼠标坐标并反馈到服务器端
187.如何使用JMAIL组件实现邮件的发送
187.如何使用JMAIL组件实现邮件的接收
188.如何使用ASP.NET的类库实现邮件的发送
189.如何生成图片的缩略图
190.如何在ASP.NET动态的创建柱状和饼状统计图
192.如何判断上传图片的高度和宽度
193.如何使用DESCryptoServiceProvider类对数据或者文件进行加密解密
194.如何统计在线人数
195.如何在ASP.NET实现验证码
196.如何在本地取得指定网页的源代码
197.如何在ASP.NET做一个日期选择器
198.如何在弹出对话框的同时保持页面的显示
199.如何点击按钮弹出新页面,输入数据后返回并且不刷新页面
第11章 文件操作
200.如何读取、修改文本文件
201.如何在ASP.NET实现文件的上传
202.如何在ASP.NET实现多文件的上传
203. 如何取得指定目录下的文件列表
204.如何在ASP.NET创建日志文件
205.如何取得系统日志,并把日志信息写到文本文件
206.如何在ASP.NET创建、删除、复制文件
207.如何动态的创建HTML文件
第12章 XML相关处理技术
首页 更新历史 在线演示 下载 帮助文档 常见问题 代码工具 分页资源 客户站点 留言簿 .Net资源 登录 注册 AspNetPager分页控件 分页是Web应用程序最常用到的功能之一,在ASP.NET,虽然自带了一个可以分页的DataGrid(asp.net 1.1)和GridView(asp.net 2.0)控件,但其分页功能并不尽如人意,如可定制性差、无法通过Url实现分页功能等,而且有时候我们需要对DataList和Repeater甚至自定义数据绑定控件进行分页,手工编写分页代码不但技术难度大、任务繁琐而且代码重用率极低,因此分页已成为许多ASP.NET程序员最头疼的问题之一。 AspNetPager针对ASP.NET分页控件的不足,提出了与众不同的解决asp.net分页问题的方案,即将分页导航功能与数据显示功能完全独立开来,由用户自己控制数据的获取及显示方式,因此可以被灵活地应用于任何需要实现分页导航功能的地方,如为GridView、DataList以及Repeater等数据绑定控件实现分页、呈现自定义的分页数据以及制作图片浏览程序等,因为AspNetPager控件和数据是独立的,因此要分页的数据可以来自任何数据源,如SQL Server、Oracle、Access、mysql、DB2等数据库以及XML文件、内存数据或缓存数据、文件系统等等。 AspNetPager 7.1 版发布(2008-7-20) 新增 LayoutType 属性,该值是 LayoutType 枚举Table或Div,默认值是Div,即使用div布局,若设为Table则使用表格布局方式; 新增 UrlPageSizeName 属性,可以通过在url参数指定PageSize属性的值,该UrlPageSizeName属性值若为空或负数忽略,否则PageSize属性将返回从Url获取的UrlPageSizeName 参数的值; 新增SubmitButtonImageUrl属性,支持使用图片按钮,当该属性的值不为空时,分页控件使用该属性的值做为图片按钮路径,如果该值为空或默认值则时使用普通按钮; 修正了设计时支持设置页索引文本或下拉框选项时,在页索引文本或下拉框显示方式选择“自动”时属性被设置为Always而非Auto的错误; 解决了设计时EnableUrlRewriting 为true 时 UrlRewritePattern属性出错的出错问题; 代码精简及其它优化; 上一版本标记为已废弃的如下属性:ShowInputBox、InputBoxClass、InputBoxStyle、TextBeforeInputBox、TextAfterInputBox 已去掉,新版本已不存在这些属性,升级时请注意; AspNetPager 7.0.2 版发布(2008-1-26) 所有属性除CloneFrom外都支持使用皮肤Scheme主题(7.0.1版大部分都不支持)。 修正了在居当前页索引按钮的情况下(CenterCurrentPageButton=true),总页数小于数字页索引按钮数(即:PageCount小于NumericButtonCount的值)时出现负页数的bug。 新增属性CurrentPageButtonTextFormatString,可以获取或设置当前页数字页索引文本的显示格式,感谢网友asuka08的建议! 新增属性UrlPagingTarget,可以获取或设置Url分页方式下分页按钮或超链接指向的目标窗口或框架的名称。 当使用下拉框显示页索引时(即PageIndexBoxType=DropDownList时),如果总页数超过80页,将在下拉框只列出部分页索引而不是全部页索引,以防页数太多导致下拉框选项太多而拖慢页面下载和打开速度。页索引下拉框的页索引选取规则是:当前页小于或等于15页时,显示前15页及最后5页;当前页索引大于总页数-14页时,显示前5页和最后15页;否则显示前5页、从当前页索引前5页到后5页的十一页以及最后5页。如果您有更好的下拉框页索引选取规则,请留言或发邮件联系我,我会及时更新。谢谢!

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧