Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.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# 中继器中的条件加载_C#_Asp.net_Repeater_Asprepeater - Fatal编程技术网

C# 中继器中的条件加载

C# 中继器中的条件加载,c#,asp.net,repeater,asprepeater,C#,Asp.net,Repeater,Asprepeater,在我的中继器中,我必须加载4个不同图像中的2个,这取决于某些条件 这里有4张图片 if (<%# DataBinder.Eval(Container.DataItem, "Voted") %> == "true") 'load these 2 images <img style="cursor: pointer" onclick="Dostuff" id='<%# DataBinder.Eval(Container.DataItem, "Uid"

在我的中继器中,我必须加载4个不同图像中的2个,这取决于某些条件

这里有4张图片

if (<%# DataBinder.Eval(Container.DataItem, "Voted") %> == "true") 'load these 2 images
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/badge-circle-plus-24-ns.png" />
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-down-24-ns.png" />
else 'load these 2 
    <img style="cursor: pointer" onclick="Dostuff" 
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-up-24-ns.png"  />
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-down-24-ns.png"  />
if(=“true”)'加载这两个图像
否则,请加载这2个
我该如何避开这个问题

你可以;看看这个。基本上,您应该将其格式化为:

<% if (DataBinder.Eval(Container.DataItem, "Voted")  == "true") {  %>
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/badge-circle-plus-24-ns.png" />
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-down-24-ns.png" />
<% } else { %>
    <img style="cursor: pointer" onclick="Dostuff" 
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-up-24-ns.png"  />
    <img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src="../../Images/arrow-down-24-ns.png"  />
<% } %>

我不确定这是否完全支持,所以你也可以考虑尝试:

<img style="cursor: pointer" onclick="Dostuff"
         id='<%# DataBinder.Eval(Container.DataItem, "Uid") %>'
         src='../../Images/<%# DataBinder.Eval(Container.DataItem, "Voted")  == "true" ? "badge-circle-plus-24-ns.png" : "arrow-up-24-ns.png" %>' />
  .
  .
”/>
.
.

后者使用条件并根据条件渲染适当的图像。

问题到底是什么?当我使用这样的if表达式时,我的结尾是:Container在当前上下文中不存在您最好使用
ItemDataBound
事件()-您的所有代码都将在代码隐藏中,并且它们的容器不存在时应该没有问题。经过大量搜索,在这里找到了我的答案:最后一个答案