ASP.NET和C#代码中的常量
发布时间:2020-12-16 04:26:26 所属栏目:asp.Net 来源:网络整理
导读:我有一个.aspx页面,它在表格中创建一列复选框,使用ID来命名 asp:TemplateField HeaderText="Select" ItemTemplate asp:CheckBox ID="testCheck" runat="server" AutoPostBack="true" / /ItemTemplate /asp:TemplateField 稍后在代码的C#部分,我试图通过使用
我有一个.aspx页面,它在表格中创建一列复选框,使用ID来命名
<asp:TemplateField HeaderText="Select"> <ItemTemplate> <asp:CheckBox ID="testCheck" runat="server" AutoPostBack="true" /> </ItemTemplate> </asp:TemplateField> 稍后在代码的C#部分,我试图通过使用以下代码检索复选框的值 CheckBox chk = (CheckBox)gridRow.FindControl("testCheck"); 理想情况下,我想删除两个字符串并将值保存在一个公共常量中,有没有办法做到这一点? 解决方法
对不起,不,没有办法完全按照自己的意愿行事.你仍然会发现两次出现的字符串:
<asp:CheckBox ID="testCheck" runat="server" AutoPostBack="true" /> 和 public const string TestCheckName = "testCheck"; 后来 CheckBox chk = (CheckBox)gridRow.FindControl(TestCheckName ); 请注意,问题不在于ASP.NET标记语法那么多常量.你可以这样做: <asp:CheckBox ID="<%= TestCheckName %>" runat="server" AutoPostBack="true" /> 但这似乎有点傻. 好吧,这根本不起作用,这就是原因: 在CheckBox的声明中,testCheck不仅仅是一个字符串.如果是字符串,那么<%#%>数据绑定的语法可行.在DataBinding事件期间,该属性将设置为该字符串值. 但是,ID属性不仅仅是一个字符串属性 – 它是设计器和页面解析器用于创建具有该名称的字段的内容.因此,必须将其设置为常量值. 类比将是这样的代码: protected CheckBox testCheck; 您不能使用字符串表达式来创建类成员的名称. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如何将锚/哈希的参数添加到RedirectToRoute
- 为什么在ASP.Net中向StatusDescription添加换行符会关闭连接
- asp.net – ReportViewer 2010不从代码加载数据源
- ASP.NET MVC下自定义错误页和展示错误页的方式
- asp.net – Automapper ninject依赖项
- asp.net – 正确对齐控件
- asp.net – jQuery无法在我的主机上运行?
- asp.net – 元素’system.webServer’有无效的子元素’重写
- Asp.Net,DropDownList,AutoPostBack和Google Chrome
- 如何在ASP.NET 4.0应用程序的IIS管理器中添加用户?
推荐文章
站长推荐
- asp.net-mvc – asp.net mvc强类型助手 – 你的渲
- asp.net-mvc – POST数据中不包含MVC 3远程验证表
- asp.net-mvc – 使用MVC的AuthorizeAttribute和多
- asp.net-core – 使用.NET Core时需要AssemblyIn
- asp经典 – 如何获得经典ASP中的当前域?
- ASP.net MVC Webforms视图引擎的缺点?
- asp.net-mvc-3 – MVC2到MVC3 IOC问题
- asp.net-mvc – Asp.net MVC – 如何检查Ajax请求
- asp.net – SignalR如何处理重复的连接ID?
- asp.net – 类型存在于’A’和’B’
热点阅读