2013-08-21 2 views
1

У меня есть форма с панелью обновлений и содержит gridview. Когда пользователи нажимают на ImageButton, появится div, показывающий «Обработка», а нижний колонтитул будет показан с пустыми текстовыми полями для ввода и сохранения данных. Я узнал, что кнопка Save работает нормально, но не ImageButton в заголовке. Когда я нажал на ImageButton, он не будет срабатывать, если я не удалю UpdatePanel. Любое предложение?ImageButton в заголовке GridView под UpdatePanel не работает

<asp:UpdatePanel runat="server" ID="UpdatePanel1" > 
     <ContentTemplate> 
      <asp:GridView ID="GridView1" runat="server" DataSourceID="SqlDataSource1"> 
       <Columns> 
        <asp:TemplateField ShowHeader="False"> 
         <HeaderTemplate><center> 
         <asp:ImageButton ID="ImgAdd" AlternateText="Add" runat="server" 
          ImageUrl="~/img/tDocumentAdd.png" Width="15" Height="15" 
          OnClick="ImgAdd_Click" CausesValidation="false" /></center> 
         </HeaderTemplate> 
        </asp:TemplateField> 
       </Columns> 
      </asp:GridView> 
      <asp:Button runat="Server" id="bthSave" OnClick="SaveData" /> 
     </ContentTemplate> 

ответ

1

Это может быть потому, что изображение кнопка находится внутри заголовка части вашей точки зрения сетки. Попробуйте положить событие пререндера и регистрации ImageButton в качестве контроля обратной передачи

.aspx

<HeaderTemplate><center> 
    <asp:ImageButton ID="ImgAdd" AlternateText="Add" runat="server" 
    ImageUrl="~/img/tDocumentAdd.png" Width="15" Height="15" 
    OnClick="ImgAdd_Click" onprerender="ImgAdd_PreRender" /></center> 

код за

protected void ImgAdd_PreRender(object sender, EventArgs e) 
{ 
    ImageButton btn=sender as ImageButton; 
    ScriptManager sc = ScriptManager.GetCurrent(this.Page); 
    sc.RegisterPostBackControl(btn); 
} 
+0

привет Ниши, я положил в своем коде и теперь ImageButton OnClick события может быть запущен. большое спасибо. , но кажется, что div, который показывает вверху страницы, не работает ... любая идея? –

+0

Разве что div внутри updatePanel? Не могли бы вы показать код aspx? – Nisha

+0

Обратите внимание, что кнопка «ImgAdd» будет работать с полной обратной передачей, т. Е. Вся страница будет размещена обратно независимо от панели обновления. Если этот ответ вам помог, используйте галочку, чтобы отметить как ответ. – Nisha

0
Try this code !!!.aspx!!! 
<HeaderTemplate><center> 
    <asp:ImageButton ID="ImgAdd" AlternateText="Add" runat="server" 
    ImageUrl="~/img/tDocumentAdd.png" Width="15" Height="15" 
    OnClick="ImgAdd_Click" onprerender="ImgAdd_PreRender" /></center> 
    code behind`enter code here !!! (.cs)` !!! 
protected void ImgAdd_PreRender(object sender, EventArgs e) 
    { 
    ImageButton btn=sender as ImageButton; 
    ScriptManager sc = ScriptManager.GetCurrent(this.Page); 
    sc.RegisterPostBackControl(btn); 
    }` 
Смежные вопросы