在aspx代码中,我想将Templatefield作为验证控件的ErrorMessage中的一个值,但不知道如何引用。我想减少复制粘贴错误。
我举了一个例子,说明我想将什么编码到aspx代码中。
<asp:TemplateField HeaderText="Last Name" SortExpression="cLASTNAME">
<EditItemTemplate>
<asp:TextBox ID="txtLastName" runat="server" Text='<%# Bind("cLASTNAME") %>' MaxLength="20" CssClass="ucIsRequired"></asp:TextBox>
<asp:RequiredFieldValidator ID="rqfvLastName" runat="server"
ControlToValidate="txtLastName"
ErrorMessage="'??HeaderText??**' value is required."
Display="none" ValidationGroup="valgrpDetails"
SetFocusOnError="False" Font-Size="Small"></asp:RequiredFieldValidator>
</EditItemTemplate>
...etc...请注意??HeaderText??代码中的ErrorMessage。我想把HeaderText (“姓”)插入到哪里??这样,在呈现错误文本时,错误文本将是:“‘姓氏’值是必需的。”(当然没有引号)。
你的评论和解决方案的例子将是非常欢迎和帮助。
当然,如果有一种方法可以在代码背后引用Templatefield的HeaderText,请提供一个示例片段。
谢谢,在advance...John里
发布于 2015-07-24 13:38:34
一种可能的解决方案是使用资源文件,然后在需要时读取它的值,并且不想重复字符串。
App_GlobalResources文件夹添加到网站根目录中,并在其中添加一个新的.resx文件。叫它HeaderNames.resx。LastNameHeaderText作为其名称,Last Name作为其值。RequiredFieldValidator中用以下内容替换ErrorMessage属性:ErrorMessage= '<%# Resources.HeaderNames.LastNameHeaderText +‘值是必需的。https://stackoverflow.com/questions/30595459
复制相似问题