2012-03-19 9 views
3

radgrid内のボタンが2回目まで起動しないという問題があります。.net Radgridの列内のボタンで2回目のクリックでitemcommandが発生する

私はその上にradgridとその列の1つのボタンを持つusercontrolを持っています。 ユーザーコントロールがページに配置されています。

ラドグリッドのボタンをクリックすると、何も起こりませんが、2回目の動作です。

これはradgridがそのデータを取得するNeedDataSourceを使用radgrid列データの一部

<telerik:GridTemplateColumn DataField="Quantity" HeaderText="Quantity" UniqueName="QuantityCol"> 
     <ItemTemplate> 
      <asp:TextBox ID="Quantity" runat="server" Columns="4" Text='<%# DataBinder.Eval(Container.DataItem, "Quantity") %>' width="40px" />     
       <asp:LinkButton id='btnUpdateRow' runat="server" CausesValidation="false" Text='<span>Update</span>' CommandName="ButtonUpdateRow" CommandArgument='<%# DataBinder.Eval(Container, "RowIndex") %>'/>     
     </ItemTemplate> 
    </telerik:GridTemplateColumn> 

あります。 Page Loadは何もしません。 itemcommandが解雇されていない - ブラウザにレンダリングするときitemcreated/itemdatabound内のデバッグ中に

は、LinkBut​​tonコントロールが、それはしかし

TestBasket_RadGrid1_ctl01_ctl04_btnUpdateRow 

を示したClientID、それは

<a id="TestBasket_RadGrid1_ctl01_ctl09_btnUpdateRow" href="javascript:__doPostBack('TestBasket$RadGrid1$ctl01$ctl09$btnUpdateRow','')"> 

ボタンをクリックすると表示されます。ポストバックからブラウワーを返すに は、ボタンをクリックする

<a id="TestBasket_RadGrid1_ctl01_ctl04_btnUpdateRow" href="javascript:__doPostBack('TestBasket$RadGrid1$ctl01$ctl04$btnUpdateRow','')"> 

示し - itemcommandが発射されます。

誰かがclientidが変更された理由を説明します。 私はプレースホルダーを配置し、itemcreatedにidを持つコントロールを作成しようとしました - それでも同じ問題です。

ご協力いただきありがとうございます。

答えて

1

ページの継承のために問題が発生したようです。 シンプルなaspxページを私たちのアーキテクチャを使用せずに作ったところ、うまく動作していたようでした。 私はコードを買ってきて、動作を停止しました。 私は、Telerikコントロールを使用するページのページ継承を変更することで修正することができました。

関連する問題