簡體   English   中英

在 Devexpress ASPxGridView 中查找控件

[英]Finding controls within Devexpress ASPxGridView

我有一個包含 ASPxGridView 和 ASPxCheckBox 和標簽的代碼,如下所示:


    <dx:ASPxGridView ID="gvTableSearchHomes" runat="server" DataSourceID="XmlHomes" Width="341px"
CssClass="tableViewSearchGrid" ClientInstanceName="gvTableSearchHomes"
AutoGenerateColumns="False" EnableRowsCache="false" KeyFieldName="ID">
<%--<Columns>--%>
    <%-- DXCOMMENT: Within ASPxGridView, add a column whose values will participate in filtering --%>
    <%--<dx:GridViewDataTextColumn FieldName="Address">
        <PropertiesTextEdit NullText="Search your home"></PropertiesTextEdit>
        <Settings AllowAutoFilterTextInputTimer="True" AutoFilterCondition="Contains" />
    </dx:GridViewDataTextColumn>
</Columns>--%>
    <Templates>
     <%--DXCOMMENT: Configure the grid's DataRow template in accordance with data source fields --%>
    <DataRow>
        <div class="gvItem">
            <dx:ASPxCheckBox ID="ChkBookList" runat="server"></dx:ASPxCheckBox>
            <dx:ASPxLabel ID="Address" runat="server" CssClass="address" Text='<%# Utils.ExtractFirstRow(Eval("Address")) %>' />
            <%--<p><dx:ASPxLabel ID="Address2" runat="server" CssClass="address2" Text='<%# Utils.ExtractSecondRow(Eval("Address")) %>' /></p>
            <p><dx:ASPxLabel ID="Price" runat="server" CssClass="price" Text='<%# Utils.GetPrice(Eval("Price")) %>' /></p>--%>
        </div>
    </DataRow>
</Templates>
<SettingsPager Visible="false" PageSize="1000" />
<Settings ShowVerticalScrollBar="True" ShowFilterRow="true" ShowColumnHeaders="false"/>
<SettingsBehavior AutoExpandAllGroups="true" AllowSelectSingleRowOnly="true" AllowSelectByRowClick="true"/>
<ClientSideEvents 
    Init="function(){ hr.TableViewLandscape_Adjust(); }" 
    EndCallback="function(){ hr.TableViewLandscape_Adjust(); }"
    SelectionChanged="OnGvTableSearchHomesSelectedChanged" />
<Styles>
    <SelectedRow ForeColor="White"></SelectedRow>
</Styles>


我無法通過 C# 代碼訪問這些控制。 有誰能夠幫我。

檢查文檔方法以在不同的 gridview 模板中查找控件。 例如ASPxGridView.FindRowTemplateControl 方法

來源: http : //developmentsolutionsjunction.blogspot.in/2011/11/find-controls-in-dataitemtemplate-of.html

//標記

    <dx:ASPxGridView ID="grvTest" AutoGenerateColumns="False" runat="server" DataSourceID="SqlDataSource1"
          OnHtmlRowPrepared="grvTest_HtmlRowPrepared" OnHtmlRowCreated="grvTest_HtmlRowCreated">
          <Columns>
              <dx:GridViewDataTextColumn Caption="RowID" Name="colRowID" VisibleIndex="0" Width="20px">
                  <DataItemTemplate>
                       <dx:ASPxLabel ID="lblRowID" runat="server" Text='Label'>
                      </dx:ASPxLabel>
                 </DataItemTemplate>
</dx:GridViewDataTextColumn>

//訪問代碼隱藏中的模板控件

protected void grvTest_HtmlRowCreated(object sender, ASPxGridViewTableRowEventArgs e)
        {
            if (e.RowType != GridViewRowType.Data) return;

            ASPxLabel label = grvTest.FindRowCellTemplateControl(e.VisibleIndex, null,
            "lblRowID") as ASPxLabel;
            label.Text = (e.VisibleIndex + 1).ToString();
        }

示例代碼:

ASPxGridView grid = (ASPxGridView)sender;

ASPxPageControl myPages = grid.FindEditFormTemplateControl("CityEditTabs") 
                                                              as ASPxPageControl;

參考:
如何為網格模板中使用的控件編寫事件
一些 GridView 代碼片段來理解 gridview 概念

標識 VisibleIndex 或 RowHandle 以獲取您在標記中創建的特定模板中的控件。

希望上面的例子能幫助你解決你的問題。

謝謝我解決了我的問題。 我把這個

Protected Sub GvEncuesta_HtmlRowCreated(sender As Object, e As ASPxGridViewTableRowEventArgs)
    If (e.RowType <> GridViewRowType.Data) Then Return

    Try
        Dim cmbRespuesas As ASPxComboBox = GvEncuesta.FindRowCellTemplateControl(e.VisibleIndex, Nothing, "ASPxCmbRespuestas")

        cmbRespuesas.IncrementalFilteringMode = IncrementalFilteringMode.Contains
        cmbRespuesas.Visible = True
        cmbRespuesas.DataSource = wcfCap.RetrieveRespuestaEncuestaxEstado(1)
        cmbRespuesas.ValueField = "Cod_Respuesta"
        cmbRespuesas.TextField = "Nombre_Respuesta"
        cmbRespuesas.DataBindItems()
    Catch ex As Exception
    End Try
End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM