我需要你的帮助来解决这个问题,我无法在网络上找到任何解决方案
我有像这样构建的datalist:
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "Name") %>
<asp:Button ID="Button1" runat="server" Text="Button" />
<%# DataBinder.Eval(Container.DataItem, "Enabled") %>
<asp:Button ID="Button2" runat="server" Text="Button" />
<asp:ImageButton ID="ImageButton1" runat="server" />
</ItemTemplate>
如果我从DB获得的Enabled值等于1,我想启用该按钮,我尝试在下面创建此代码,但没有成功。
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
int EnableDisable = Convert.ToInt32(((DataRowView)e.Item.DataItem).Row.ItemArray[1]);
if (EnableDisable != 1)
{
Button BT = e.Item.FindControl("ImageButton1") as Button;
BT.Enabled = true;
}}
任何想法,你能帮助我吗?
非常感谢你。
答案 0 :(得分:1)
我没有在您的代码中看到您在必要时禁用按钮的位置。你试过这个:
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
int EnableDisable = Convert.ToInt32(((DataRowView)e.Item.DataItem).Row.ItemArray[1]);
ImageButton BT = e.Item.FindControl("ImageButton1") as ImageButton;
BT.Enabled = (EnableDisable == 1);
}
答案 1 :(得分:0)
更改此行
Button BT = e.Item.FindControl("ImageButton1") as Button;
通过
ImageButton BT = e.Item.FindControl("ImageButton1") as ImageButton;