[英]How do I access a string of a child object on aspx page?
我正在尝试使用具有子对象的类,该子对象具有字符串-并且正在尝试通过aspx页面上的嵌入式C#代码访问此对象。
更具体地说,假设我正在使用具有Title属性(字符串)的'Upload'类的对象。 上载对象也可以具有“文件”属性(对象)。 每个File对象都有一个Url属性(字符串)。
我可以这样访问标题:
<%# ((Upload)Container.DataItem)["Title"] %>
很好 但是,我该如何访问文件的网址? 因为以下方法不起作用:
<%# ((File)((Upload)Container.DataItem)["File"]).Url %>
正如您可能从语法中猜测的那样,所有这些都在asp中继器中。
您可以尝试类似
<%# Bind("File.Url") %>
要么
<%# DataBinder.Eval(Container.DataItem, "File.Url") %>
尝试这个:
<%# ((Upload)Container.DataItem).File.Url %>
您将获得容器数据项并将其转换。 一旦有了对象,就可以像调用其他对象一样调用它的属性和方法
我只是给您一个样本,您可以自己添加样本:-
下面是一个示例,该示例返回带有后缀点的文本
步骤1:创建服务器端代码以返回带后缀点的文本
public string ReturnDotSuffix(string strValue, int iFontSize, int iWidth)
{
string strReturnValue = string.Empty;
try
{
CommonLib objCommonLib = new CommonLib();
strReturnValue = objCommonLib.SuffixDots(strValue, iFontSize, iWidth);
}
catch (Exception ex)
{
HandleException.ExceptionLogging(ex.Source, ex.Message, true);
}
return strReturnValue;
}
步骤2:从客户端调用它。
Text ='<%#ReturnDotSuffix((string)DataBinder.Eval(Container.DataItem,“ MessageTitle”),8,170)%>'
您的情况也可以这样做。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.