2013-12-09 3 views
1

У меня есть управление сеткой под названием RadGrid1 и с точкой останова в RadGrid1_ItemDataBound, но когда я запускаю приложение aspx, точка останова не запускается.Точка останова, не попадающая на ItemDataBound function

мой код:

<telerik:RadGrid ID="RadGrid1" runat="server" Width="980px" CssClass="GridDisplay" 
      AllowAutomaticDeletes="false" AllowAutomaticInserts="false" AllowAutomaticUpdates="true" AllowPaging="true" 
      AutoGenerateColumns="False" AutoGenerateDeleteColumn="false" AutoGenerateEditColumn="false" ItemStyle-Height="20px" 
      ClientSettings-ActiveRowIndex="true" EnableViewState = "false" OnDeleteCommand = "RadGrid1_OnDelete" 
      OnItemCreated = "RadGrid1_ItemCreated" OnItemDatabound = "RadGrid1_ItemDatabound" OnNeedDataSource = "RadGrid1_NeedDataSource"> 

    <telerik:GridTemplateColumn DataField="Confirmed" HeaderText="Confirmed" UniqueName="Confirmed" Visible="true"> 
     <ItemTemplate> 
      <asp:CheckBox ID="chkVerified" runat="server" AutoPostBack="true" 
      Checked='<%# bool.Parse(Eval("Verified").ToString()) %>' 
      Enabled='<%# !!Convert.ToBoolean(Convert.ToInt32(Eval("Verified").ToString())) %>' 
      ToolTip='<%# Eval("NoConfirmDesc").ToString() %>' 
      /> 
     </ItemTemplate> 
    </telerik:GridTemplateColumn> 

aspx.cs

private void RadGrid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e) 
{ 
    if (e.Item is GridDataItem) 
    { } 
} 
+0

Я полагаю, что вы привязываете сетку к событию onload. Ваша сетка заполнена желаемыми данными? –

+0

Правильно, он отображает нужные данные – Csharp

+2

Как правило, триггер точек останова в вашем проекте? –

ответ

2

В ASPX, обработчик для Databound события называется RadGrid1_ItemDatabound

OnItemDatabound = "RadGrid1_ItemDatabound" 

, но в коде позади, ваш метод пишется с капитала B в DataBound

void RadGrid1_ItemDataBound 

Убедитесь, что точка останова находится в правильном методе.

+1

Хороший обзор! +1 Это полностью. и мы потеряли час .. Я не знаю, смеяться или плакать! – giammin

+0

wow ...... хотя технически страница должна была разбиться из-за того, что функция в aspx отличается от кода позади .... не знаю, почему страница не сработала ... Спасибо за вашу помощь – Csharp

+1

@Csharp да , страница sohuld разбилась. у вас, вероятно, есть другой метод RadGrid1_ItemDatabound в коде позади или в базовом классе – Ovidiu

1

может быть, вы забыли зарегистрировать или не правильно регистрации OnItemDataBound событие

Или, может быть, вы не привязки данных контроля ?

RadGrid1.DataSource= mydatasource; 
RadGrid1.DataBind(); 

Как последняя возможность может быть IIS Express и VisualStudio отладчик не работает correclty

Я предлагаю, чтобы убить iisexpress процесс, а затем восстановить раствор затем повторите попытку

+0

ну, я забыл упомянуть об этом в своем посте ... но на странице aspx есть OnItemDatabound = "RadGrid1_ItemDatabound" – Csharp

+0

Я не понимаю последнюю часть вашего комментария. – Csharp

+0

DataSource & DataBind() также существует в моем коде. – Csharp

1

Не могли бы вы убедитесь, что AutoEventWireup="true" на странице ?

<%@ Page ... AutoEventWireup="true" %> 

Кроме того, убедитесь, что нет пространства между ними OnItemDatabound="RadGrid1_ItemDatabound"

Одна вещь, которую я замечаю в вашем коде вы хотите использовать OnNeedDataSource для связывания данных, если вы используете RadGrid.

OnNeedDataSource="RadGrid1_NeedDataSource" 
+0

OnNeedDataSource существует в моем коде aspx; Интервал не изменил; AutoEventWireup установлен в значение True; – Csharp

+0

Удаляет ли точка перехвата событие Page_Load, когда вы используете F5? Где ваша точка разрыва точно (вы можете опубликовать скриншот)? – Win

+0

Не удается опубликовать снимок экрана ... ПК настроен на отключение скриншота. Да, точка останова попадает на страницу PageLoad. – Csharp

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

  • Нет связанных вопросов^_^