Как включить отключение кнопок в списке данных - PullRequest
0 голосов
/ 12 мая 2011

У меня есть список данных с некоторыми полями привязки данных с 2 кнопками.Я хочу включить кнопку отключения в зависимости от значения столбца (состояния) каждой строки, поэтому, например, если значение состояния равно 0, кнопка удаления должна быть отключена, а кнопка добавления должна быть активирована аналогичным образом, когда значение состояния равно 1,наоборот ..

protected void dlEditCaravans_ItemDataBound(object sender, DataListItemEventArgs e)
{
    Button addtoFeauture = e.Item.FindControl("btnAddToFeature") as Button;
    Button removetoFeauture = e.Item.FindControl("btnRemoveFeature") as Button;
    int id = Convert.ToInt32(dlEditCaravans.DataKeys[e.Item.ItemIndex]);
    int check = caravans.GetfeautureValue(id);

    if (check == 0)
    {
        addtoFeauture.Enabled = true;

    }

    else
    {
        removetoFeauture.Enabled = true;

    }

  }

Я пробовал что-то подобное выше, но это дает ссылку на объект, не установленную для ошибки экземпляра.

Ответы [ 2 ]

1 голос
/ 12 мая 2011

Вам необходимо использовать событие ItemDatabound Datalist

protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
 if ((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem))
    {
        DataRow dr = ((DataRowView)e.Item.DataItem).Row;
        if (Convert.ToBoolean(dr["StateColumnName"])
        {
          ((Button)e.Item.FindControl("Button1")).Enable = True;
        }
    }
}
1 голос
/ 12 мая 2011
  void DataListProduct_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
     {
         if (e.Item.ItemType == ListItemType.Item ||
             e.Item.ItemType == ListItemType.AlternatingItem)
         {

             Button BT = e.Item.FindControl(“ButtonID“) as Button;
             BT.Enable = True or false depends upon your condition
         }

     }
...