ASP.NET:DataList - 如何编辑 ItemTemplate 中 Item 中的 2 个变量

发布于 2024-10-06 03:54:26 字数 397 浏览 9 评论 0原文

我有一个数据列表,在 ItemTemplate 上,我这样做:

<%#Eval ("MinAge") %>

其中 MinAge 是 Int。我还有一个 MaxAge,它也是一个 int。

问题是,我如何改变它,以便我可以做类似的事情:

if (MaxAge == 99)
  MinAge + "+"
else
  MinAge + "-" + MaxAge

这样,如果我们有 minage=18,maxage=99 它将是 18+ 如果我们有 minage=18,maxage=20 它将是 18 - 20

事情对我来说变得很复杂,因为我尝试将 int 更改为 string,那么正确的方法是什么?

I have a datalist, and on the ItemTemplate, I do this for example:

<%#Eval ("MinAge") %>

Where MinAge is a Int. I also have a MaxAge that is also an int.

Quesiton is, how do i change it so that i could do something like:

if (MaxAge == 99)
  MinAge + "+"
else
  MinAge + "-" + MaxAge

so that if we have minage=18,maxage=99 it will be 18+
if we have minage=18,maxage=20 it will be 18 - 20

the thing is it gets complicated for me because i try to change int to string, so what is the proper way of doing it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

平生欢 2024-10-13 03:54:26

在你的代码隐藏中做...

protected string GetAgeRange(object minAge, object maxAge)
{
   var min = (int)minAge;
   var max = (int)maxAge;

   if (max >= 99)
      return min + "+";

   return min + " - " + max;
}

然后将你的替换

<%# Eval("MinAge") %>

<%= GetAgeRange(Eval("MinAge"), Eval("MaxAge")) %>

注意使用=而不是#。

您需要在 GetAgeRange 中进行更多错误检查,但总体思路应该是您所需要的。

In your codebehind do...

protected string GetAgeRange(object minAge, object maxAge)
{
   var min = (int)minAge;
   var max = (int)maxAge;

   if (max >= 99)
      return min + "+";

   return min + " - " + max;
}

Then replace your

<%# Eval("MinAge") %>

with

<%= GetAgeRange(Eval("MinAge"), Eval("MaxAge")) %>

Note the use of = instead of #.

You'll want some more error checking in GetAgeRange but the general idea should be what you need.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文