Editing without Command Column – GridView Template

Editing without Command Column – अभी तक हमने जितने भी Examples देखे हैं, उन सभी में हमने CommandField को Use किया है, जो कि Automatically Edit Controls Generate करता है। लेकिन यदि हम चाहें तो इन Edit Controls को अपने Template-Based Approach के माध्‍यम से भी Create कर सकते हैं और ऐसा करना काफी आसान भी है।

इसके लिए हमें हमारे ItemTemplate में एक Button Control Add करना होता है और उस Button के CommandName Property में Value के रूप में “Edit” मान Set करना होता है। परिणामस्वरूप ये Button Control, Automatically Editing Process को Trigger कर देता है, जो कि Appropriate Events को Fire करता है और Rows को Edit Mode में Switch कर देता है।

यदि हम हमारे पिछले Example में ही Specified ItemTemplate Element को Modify करें, तो हमारा Modified Code कुछ निम्नानुसार हो सकता है:


    <ItemTemplate>
    <b>
        <%# Eval("EmployeeID") %> - <%# Eval("TitleOfCourtesy") %>
        <%# Eval("TitleOfCourtesy") %> <%# Eval("FirstName") %>
        <%# Eval("LastName") %>
    </b>
    <hr />
    <small><i>
        <%# Eval("Address") %><br />
        <%# Eval("City") %>, <%# Eval("Country") %>,
        <%# Eval("PostalCode") %><br />
        <%# Eval("HomePhone") %></i>
        <br /><br />
        <%# Eval("Notes") %>
        <br /><br />
        <asp:LinkButton runat="server" Text="Edit" CommandName="Edit" ID="cmdEdit" />
    </small>
    </ItemTemplate>

जब हम उपरोक्तानुसार ItemTemplate Specify करते हैं, तब EditItemTemplate में भी हमें दो और Buttons Add करने पडते हैं, जिनका CommandNameUpdate” व “Cancel” रखना पडता है और ये काम करने के लिए हमें हमारे EditItemTemplate को निम्नानुसार Modify करना होता है:


<EditItemTemplate>
<b>
<%# Eval("EmployeeID") %> -
    <asp:DropDownList runat="server" ID="EditTitle"
     SelectedIndex='<%# GetSelectedTitle(Eval("TitleOfCourtesy")) %>'
     DataSource='<%# TitlesOfCourtesy %>' />
<%# Eval("FirstName") %>
<%# Eval("LastName") %>
</b>
<hr />
<small><i>
    <%# Eval("Address") %><br />
    <%# Eval("City") %>, <%# Eval("Country") %>,
    <%# Eval("PostalCode") %><br />
    <%# Eval("HomePhone") %></i>
    <br /><br />
    <asp:TextBox Text='<%# Bind("Notes") %>'
       runat="server" id="textBox" TextMode="MultiLine" Width="413px" />
    <br /><br />
    <asp:LinkButton runat="server" Text="Update" CommandName="Update" ID="cmdUpdate" />
    <asp:LinkButton runat="server" Text="Cancel" CommandName="Cancel" ID="cmdCancel" />
</small>
</EditItemTemplate>

अब यदि हम हमारे Application को Run करते हैं, तो इस बार हमारा Application निम्नानुसार दिखाई देता है:

Editing without Command Column - GridView Template - ASP.NET in Hindi

जहां यदि हम “Edit” Hyperlink पर Click  करें, तो हमारा Record Editing Mode में निम्नानुसार Change हो जाता है:

Editing without Command Column - GridView Template - ASP.NET in Hindi

जहां हमें Update व Cancel Hyperlinks दिखाई देते हैं और इन्हें भी हम ठीक उसी तरह से Use कर सकते हैं, जिस तरह से Auto-Generated Buttons को Use करते हैं।


Special Discount Offer

खरीदिए एक से ज्‍यादा EBooks, और पाईए ₹100 से ₹1200 तक का Extra Cash Discount

Discount Coupon Codes