Gridview WebUserControl访问所选行

时间:2011-12-06 10:49:00

标签: c# asp.net

我在网络自定义控件中有一个网格视图,想要选择任何行,以便我可以编辑该行。编辑按钮位于母版页上,default.aspx是从该母版继承的,并知道我想在我的defult页面上使用行ID,以便我可以轻松编辑该行。

我的网络用户控件是

<asp:GridView runat="server" ID="grvBranches" GridLines="None" 
  AutoGenerateColumns="False" CellPadding="5" 
  OnRowDataBound="grvBranches_RowDataBound" 
  OnRowCancelingEdit="grvBranches_RowCancelingEdit" 
  OnRowEditing="grvBranches_RowEditing" 
  OnRowUpdating="grvBranches_RowUpdating">
    <SelectedRowStyle BackColor="#d8d8d8" />
    <HeaderStyle BackColor="#d8d8d8" />
    <Columns>
        <asp:TemplateField>
            <HeaderTemplate>
                <asp:Label Text="BranchName" ID="lblHeaderBranchName" runat="server" />
            </HeaderTemplate>
            <ItemTemplate>
                <asp:Label Text='<%# Eval("ID") %>' ID="lblID" Visible="false" runat="server" />
                <asp:Label Text='<%# Eval("Branch_Name") %>' ID="lblBranchName" runat="server" />
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField>
            <HeaderTemplate>
                <asp:Label Text="OrganizationName" ID="lblHeaderOrganizationName" runat="server" />
            </HeaderTemplate>
            <ItemTemplate>
                <asp:Label Text='<%# Eval("Organization_Name") %>' ID="lblOrganizationName" runat="server" />
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField>
            <HeaderTemplate>
                <asp:Label Text="Address" ID="lblHeaderAddress" runat="server" />
            </HeaderTemplate>
            <ItemTemplate>
                <asp:Label Text='<%# Eval("Address_1") %>' ID="lblAddress" runat="server" />
            </ItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField>
            <HeaderTemplate>
                <asp:Label Text="City" ID="lblHeaderCityName" runat="server" />
            </HeaderTemplate>
            <ItemTemplate>
                <asp:Label Text='<%# Eval("City_Name") %>' ID="lblCityName" runat="server" />
            </ItemTemplate>
        </asp:TemplateField>
        <asp:BoundField />
        <asp:CommandField ShowSelectButton="True" />
    </Columns>
</asp:GridView>

我希望这个rowid在我的默认页面上

1 个答案:

答案 0 :(得分:1)

在您的母版页.cs上,在EditButton点击事件

GridView gView = ContentPlaceHolder1.FindControl("GridView1") as GridView;
// use gView.SelectedIndex to manipulate the row, edit it, etc

假设您的主要ContentPlaceHolder的ID是'ContentPlaceHolder1'