我在asp.net中使用GridView
。
第一列是按钮控件列表 -
<ItemTemplate>
<asp:Button ID="statusButton" runat="server" Text="Select"
OnClick="statusButton_CheckedChanged" />
</ItemTemplate>
但是我想根据表中另一列的值修改数据绑定上此按钮的背景颜色和文本值。
我的问题是,我需要检查其他列的值,检查它们,它们将是1
或-1
,该值将设置按钮的设计。
如何检查此绑定字段的值 -
<asp:BoundField DataField="EXCLUDE" HeaderText="EXCLUDE" SortExpression="EXCLUDE"
ReadOnly="True" HeaderStyle-CssClass = "hideGridColumn"
ItemStyle-CssClass="hideGridColumn"/>
然后设置按钮的颜色和文字?
答案 0 :(得分:1)
按如下方式更改
<ItemTemplate>
<asp:Button ID="statusButton" runat="server" Text="Select"
OnClick="statusButton_CheckedChanged" />
</ItemTemplate>
根据您的情况使用不同的css类
.class1{
color:red;
font-size:10;
}
.class2{
color:blue;
font-size:12;
}
<ItemTemplate>
<asp:Button ID="statusButton" runat="server" Text="Select"
CssClass='<%# Convert.ToString(Eval("EXCLUDE"))== "1" ? "class1" : "class2" %>'
OnClick="statusButton_CheckedChanged" />
</ItemTemplate>
您可以根据@edwin
的建议,在RowDataBound
事件的C#中使用它
答案 1 :(得分:1)
您可以使用gridview的RowDataBound
事件,例如:
myGrid.RowDataBound += new GridViewRowEventHandler(myGrid_RowDataBound);
void myGrid_RowDataBound(object sender, GridViewRowEventArgs e)
{
//Raised after each row is databound
if (e.Row.RowType == DataControlRowType.DataRow)
{
string value = e.Row.Cells[5].Text; //sixth column
if (value == "1")
{
//change button color (assuming button is in first column)
Button myButton = e.Row.Cells[0].Controls[0] as Button;
myButton.BackColor = Color.Red;