C# 如何更改此';签入';生成ListViewItem时的按钮?
我想让“签入”按钮的颜色显示为绿色,具体取决于代码中某些其他数据的值,但我无法在onClick方法之外访问该按钮。我应该能够通过它的ID访问它,但由于某种原因我无法访问它C# 如何更改此';签入';生成ListViewItem时的按钮?,c#,asp.net,listview,C#,Asp.net,Listview,我想让“签入”按钮的颜色显示为绿色,具体取决于代码中某些其他数据的值,但我无法在onClick方法之外访问该按钮。我应该能够通过它的ID访问它,但由于某种原因我无法访问它 (附带问题:为什么我单击该按钮时SelectedIndex返回-1?在ItemWdata绑定事件中,查找所需的值,然后在此设置按钮颜色。您还可以在buttons命令参数中设置值,然后在click事件中获取该值 您需要访问列表视图的项数据绑定事件上的按钮,有条件地更改按钮的颜色 以下是可帮助您完成此任务的链接: 我很确定这个问
(附带问题:为什么我单击该按钮时SelectedIndex返回-1?在ItemWdata绑定事件中,查找所需的值,然后在此设置按钮颜色。您还可以在buttons命令参数中设置值,然后在click事件中获取该值 您需要访问
列表视图
的项数据绑定
事件上的按钮
,有条件地更改按钮的颜色
以下是可帮助您完成此任务的链接:
我很确定这个问题以前有人问过——访问listview中的控件。可能重复tbh我以前问过这个问题至少2到3次,但都是针对不同的问题(尽管结构非常类似的问题)&谢谢@蕭為元 , 你发布的链接帮助我找到了解决方案。
<asp:ListView
ID="lvInstructors"
runat="server"
itemwDataBound="lvDataBound"
itemCommand="lvCommand"
Visible="true">
<LayoutTemplate>
<div class="container" id="mainContent">
<asp:PlaceHolder ID="itemPlaceHolder" runat="server" />
</div>
</LayoutTemplate>
<ItemTemplate>
<div class="row instructorItem" id="instructorItem">
<asp:HiddenField ID="sessionID" runat="server" Value='<%#Eval("SessionID")%>' />
<asp:HiddenField ID="hasChckedIn" runat="server" Value='<%#Eval("hasCheckedIn")%>' />
<div class="col-2 sessionStartTimeDiv">
<p class="sessionStartTime"><%#Eval("SessionStartTime")%></p>
</div>
<div class="col-2 instructorHeadshotDiv">
<asp:Image class="instructorHeadshot" runat="server" src='<%#Eval("InstructorHeadshot")%>' />
</div>
<div class="col-5 sessionInfoDiv">
<h3 class="instructorName"><%#Eval("InstructorName")%></h3>
<p class="sessionInfo"><%#Eval("SessionInfo")%></p>
</div>
<div class="col-3 checkInBtnDiv">
<asp:Button class="checkInBtn" ID="checkInBtn" runat="server" OnClick="CheckInBtn_Click" Text="Check-In"></asp:Button>
</div>
</div>
<hr />
</ItemTemplate>
<EmptyDataTemplate>
<br />
<br />
No Sessions to Display.
</EmptyDataTemplate>
</asp:ListView>
protected void CheckInBtn_Click(object sender, EventArgs e)
{
Button checkInBtn = (Button)sender;
checkInBtn.Text = "Check-Out";
checkInBtn.BackColor = Color.Green;
...
}