0

次の ItemTemplate があります。

    <ItemTemplate>
                        <asp:Label ID="lblUser" runat="server"
                            Text='<%# DataBinder.Eval(Container.DataItem, "Schedule.Employee.EmployeName") %>'></asp:Label>

                                <a href="#scheduleModal" id="scheduleLnk"
                       onclick="<%# "go('scheduleFrame',
'ScheduleFrame.aspx?type=project&id=" + Eval("ProjectID").ToString() + "')" %>"
                           data-toggle="modal">Unassigned</a>
                    </ItemTemplate>

モーダルを開くラベルとリンクがあります。

が null の場合DataBinder.Eval(Container.DataItem, "Schedule.Employee.EmployeName")、プロジェクトがスケジュールされていないことを意味し、lblUser を非表示にしてリンクを表示する必要があります。それ以外の場合、リンクを非表示にして lblUser を表示する必要があります。

これを行う方法はありますか?scheduleLnk に表示可能なプロパティがあるかどうかはわかりません。

4

1 に答える 1

4

はい、方法があります:

<ItemTemplate>
     <asp:Label ID="lblUser" runat="server"
          Text='<%# DataBinder.Eval(Container.DataItem, "Schedule.Employee.EmployeName") %>'
          Visible='<%# DataBinder.Eval(Container.DataItem, "Schedule.Employee.EmployeName") == null ? false: true %>'> 
      </asp:Label>

      <a href="#scheduleModal" id="scheduleLnk"
           onclick="<%# "go('scheduleFrame',
               'ScheduleFrame.aspx?type=project&id=" + Eval("ProjectID").ToString() + "')" %>"
           data-toggle="modal"
           style='<%# DataBinder.Eval(Container.DataItem, "Schedule.Employee.EmployeName") == null ? "display:block;": "display:none;"%>'>>
             Unassigned
      </a>
</ItemTemplate>
于 2013-02-27T16:22:25.223 に答える