2016-02-10 3 views
0

У меня столбец asp: CheckBoxField в asp: GridView. Я бы хотел сделать эту колонку ReadOnly, если она уже проверена. Это поле заполняется из значения bool в базе данных.Можно ли переключить ReadOnly на столбец CheckBox в ASP.NET GridView?

До сих пор я смог установить свойство ReadOnly столбца во время разработки. Когда я пытаюсь установить его динамически в коде, он, похоже, ничего не делает.

enter image description here

Есть в любом случае сослаться на свойство «ReadOnly» флажков внутри GridView?

enter image description here

+0

да вы определенно можете ссылаться на значение а вы должны иметь событие для EditLinkButton что-то вроде этого 'LinkButton lnk = отправитель как LinkButton; GridViewRow gr = (GridViewRow) lnk.NamingContainer; string tempID = gv.DataKeys [gr.RowIndex] .Value.ToString(); 'как только вы получите строку, на которой вы находитесь, вы можете установить или установить значение флажка – MethodMan

ответ

1

вы можете achive это через GridViews данные строки связаны события

<asp:gridview id="Gridview1" runat="server" onrowdatabound="Gridview1_RowDataBound" ..........> 

и в коде позади

protected void Gridview1_RowDataBound(object sender, GridViewRowEventArgs e) 
    { 
     if (e.Row.RowType == DataControlRowType.DataRow) 
     { 
      CheckBox chk = (CheckBox)e.Row.FindControl("chkBox"); 
      if (chk.Checked==true) 
      { 
       chk.Enabled = false; 
      } 
      else 
      { 
       chk.Enabled = true; 
      } 
     } 
    } 
+0

Спасибо за информацию Sruthi. Я действительно пытался использовать этот код, но он не работал. Я поставил точку останова на этом событии, он никогда не вызывался. –

+0

@MatthewWalk - У меня был этот вопрос, прежде чем он не стрелял. Вы пытались добавить '' к элементу управления? – zeroef

+0

У вас есть zeroef, спасибо! –

Смежные вопросы