2011-06-23 19 views
0

我有一個通常的弧形網格。我想知道是否可以在行中而不是在列中有一個操作按鈕列表。這些按鈕將根據每行而變化。 有什麼想法?如何爲telerik rad grid中的每個網格行添加命令行?

這裏是我到目前爲止已經嘗試..但對於嵌套視圖沒有成功..

<telerik:RadGrid ID="RadGrid1" DataSourceID="SqlDataSource1" runat="server" AutoGenerateColumns="False" 
    AllowSorting="True" AllowPaging="True" PageSize="5" GridLines="None" ShowGroupPanel="True"> 
    <MasterTableView DataSourceID="SqlDataSource1" DataKeyNames="id" AllowMultiColumnSorting="True" 
     GroupLoadMode="Server"> 
     <Columns> 
      <telerik:GridBoundColumn DataField="ref" HeaderText="Ref" SortExpression="ContactName" 
       UniqueName="ContactName"> 
      </telerik:GridBoundColumn> 
      <telerik:GridBoundColumn DataField="title" HeaderText="Title" SortExpression="ContactTitle" 
       UniqueName="ContactTitle"> 
      </telerik:GridBoundColumn> 

     </Columns> 
     <NestedViewSettings DataSourceID="SqlDataSource2"> 
      <ParentTableRelation> 
       <telerik:GridRelationFields DetailKeyField="vacancyid" MasterKeyField="id" /> 
      </ParentTableRelation> 
     </NestedViewSettings> 
     <NestedViewTemplate> 
      <asp:Panel ID="NestedViewPanel" runat="server" CssClass="viewWrap"> 
       <div class="contactWrap"> 
        <fieldset style="padding: 10px;"> 
         <legend style="padding: 5px;"><b>Detail info for Customer:&nbsp; &nbsp;</b> 
         </legend> 
         <table> 
          <tbody> 
           <tr> 
            <td> 
             <table> 
              <tbody> 
               <tr> 
                <td> 
                 location: 
                </td> 
                <td> 
                 <asp:Label ID="cityLabel" Text='<%#Bind("locationid") %>' runat="server"></asp:Label> 
                </td> 
               </tr> 

              </tbody> 
             </table> 
            </td> 

           </tr> 
          </tbody> 
         </table> 
        </fieldset> 
       </div> 
      </asp:Panel> 
     </NestedViewTemplate> 
    </MasterTableView> 
    <PagerStyle Mode="NumericPages"></PagerStyle> 
    <ClientSettings AllowDragToGroup="true" /> 
</telerik:RadGrid> 
<asp:SqlDataSource ID="SqlDataSource2" 
    SelectCommand="select vacancyid, locationid from vacancylocationlocation where vacancyid = @id" ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" 
    runat="server"> 
    <SelectParameters> 
     <asp:Parameter Name="id" /> 
    </SelectParameters> 
</asp:SqlDataSource> 
<asp:SqlDataSource ID="SqlDataSource1" 
    SelectCommand="select id, ref, title from vacancy where id = 1045" ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" 
    runat="server"></asp:SqlDataSource> 
+0

我很困惑,你說的動作按鈕,但我沒有看到任何按鈕嵌入模板... –

+0

是的它只是一個實驗。按鈕將取決於主表主鍵。有什麼方法可以通過編程實現嗎?目前我遇到的問題是我不能讓嵌套模板查詢工作..不知道爲什麼..如果我可以使它工作,那麼我可以嘗試在那裏添加按鈕。 – Iternity

+0

對於動態按鈕,您可以使用內置中繼器,並在綁定網格時綁定按鈕列表。您還可以包含按鈕列表並顯示/隱藏您想要的按鈕。綁定按鈕取決於HierarchyLoadMode - 您可以將其設置爲ServerOnDemand,在擴展器觸發時加載,或者將其設置爲立即加載。當需要數據時,它會觸發GridDetailViewDataBind事件,您可以聽到並正確綁定。 –

回答

0

你怎麼在一排的意思?你的意思是所有在一個單元格?你可以通過使用GridTemplateColumn來完成。如果您希望按鈕顯示爲嵌套項目,這意味着您必須點擊左側的下拉圖標才能看到更多信息,您可以通過添加NestedViewTemplate(或類似命名)來放置您想要的任何內容。

HTH。

+0

謝謝Brian。請參考問題中的代碼 – Iternity

相關問題