Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 直接在.aspx页面上输出静态属性_C#_Asp.net_Static_Static Members - Fatal编程技术网

C# 直接在.aspx页面上输出静态属性

C# 直接在.aspx页面上输出静态属性,c#,asp.net,static,static-members,C#,Asp.net,Static,Static Members,我想在aspx页面上输出类似的内容(而不是代码隐藏): 其中Fields.FirstName是一个静态类。我该怎么做?我收到一个错误,说“名称‘字段’在当前上下文中不存在”。我错过了什么?我必须在.aspx页面上包含一些内容吗 您需要在aspx页面上的代码隐藏或代码段中执行此操作。不能嵌套asp标记()不能嵌套在asp:text元素中。使用完整的类名(包括所有嵌套的名称空间)和=符号,则不是数据绑定(由#符号表示)。我通常这样做 <%=Namespace.MyStrings.MyCon

我想在aspx页面上输出类似的内容(而不是代码隐藏):



其中Fields.FirstName是一个静态类。我该怎么做?我收到一个错误,说“名称‘字段’在当前上下文中不存在”。我错过了什么?我必须在.aspx页面上包含一些内容吗

您需要在aspx页面上的代码隐藏或代码段中执行此操作。不能嵌套asp标记(
)不能嵌套在
asp:text
元素中。

使用完整的类名(包括所有嵌套的名称空间)和=符号,则不是数据绑定(由#符号表示)。我通常这样做

<%=Namespace.MyStrings.MyConstantString%>

此外,根据页面的设置方式,您可能必须在响应的写括号周围使用单引号

<asp:TextBox ID="..." runat="server" Text='<%=Namespace.MyStrings.MyConstantString%>'></asp:TextBox>

更新:

超级黑客,但我成功了

<supr:SuprTextBox ID="txt" runat="server" ClientIDMode="Static"></supr:SuprTextBox>
<div id="preload" style="display:none;"><%=Supr.Strings.ASSET_CONTROL_LOCATION%></div>
<script type="text/javascript">
    $(function () {
        $('#txt').val($('#preload').html());
    });
</script>

$(函数(){
$('#txt').val($('#preload').html());
});
你可以试试这个:

<input type="text" value="<%=Fields.FirstName %>" id="txt1" />

但是,请记住,它不再是服务器控件

可以在服务器控件中使用表示法,但是只有在从代码隐藏调用DataBind时,才会填充它们。在外部作用域中使用单引号是非常习惯的,因为在内部作用域中经常需要双引号,如下所示:

<input type="text" value='<%=Fields["FirstName"] %>' id="txt1" />

但是,如果不需要引用,它也应该按照您所描述的那样工作:

<asp:text id="txt1" runat="server" value="<%# Fields.FirstName %>">

了解更多信息。

可能我使用了错误的标记-基本上我希望能够输出该属性。。。我该怎么做?>Fields类位于何处?它是同一项目的一部分。我的方法调用同一解决方案中的单独项目(类库)。您的项目是否有根命名空间(是web应用程序)?或者您的类是在App_Code文件夹中定义的?@TrueDevelopment您不能在服务器控件中使用表示法。我的错误,刚刚测试了它,似乎只允许使用数据绑定语法。您可以使用jquery-写入span/div并在doc就绪时进行复制。您是否在PageLoad()代码中调用了txt1.DataBind()(在限定包含名称空间的全名字段之后)?我没有-这有关系吗?我只是放一个值——如果我放一个字符串,它不需要,对吗?这很重要,因为它是一个服务器控件。对于非服务器控件,您可以使用符号内联填充它。如果控件位于中继器中,该怎么办?如何绑定控件?谢谢!请加上答案,我会这样做的。。
<asp:text id="txt1" runat="server" value="<%# Fields.FirstName %>">