توضیحات و دانلود

کنترل AJAX FilteredTextBoxExtender برای TextBox در GridView Row EditItemTemplate با ASP.NET
0 0
کنترل AJAX FilteredTextBoxExtender برای TextBox در GridView Row EditItemTemplate با ASP.NET

 با سلام در این مقاله با مثال و کد نمونه پیوست ، چگونگی استفاده و اجرای کنترل AJAX FilteredTextBoxExtender  برای TextBox در GridView Row EditItemTemplate برای تأیید اعتبار و جلوگیری از ورود  نامعتبر را توضیح خواهیم داد.
 
 استفاده از کنترل AJAX FilterTextBoxExtender
1. AJAX ScriptManager را در صفحه بکشید .
2. پس از رجوع به پروژه خود ، كتابخانه كنترل AJAX Toolkit را ثبت كنيد

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>

افزودن AJAX FilteredTextBoxExtender به کنترل GridView EditItemTemplate
در زیر یک GridView ساده با 2 ستون برای آیتم و دیگری برای Quantity داریم. ستون Quantity  قابل ویرایش است از این رو AJAX FilteredTextBoxExtender را به Quantity TextBox در EditItemTemplate از GridView اضافه کردیم ، تا کاربر بتواند فقط عدد یا رقم وارد کند.

<cc1:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
</cc1:ToolkitScriptManager>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnRowEditing="OnRowEditing" OnRowCancelingEdit = "OnRowCancelingEdit" OnRowUpdating = "OnRowUpdating">
    <Columns>
        <asp:BoundField DataField="Item" ReadOnly="true" HeaderText = "Item" />
        <asp:TemplateField HeaderText = "Quantity">
            <ItemTemplate>
                <asp:Label ID="lblQuantity" runat="server" Text='<%#Eval("Quantity") %>'></asp:Label>
            </ItemTemplate>
            <EditItemTemplate>
                <asp:TextBox ID="txtQuantity" runat="server" Text='<%#Eval("Quantity") %>'></asp:TextBox>
                <cc1:FilteredTextBoxExtender ID="FilteredTextBoxExtender1" runat="server" FilterType="Numbers"
                    TargetControlID="txtQuantity" />
            </EditItemTemplate>
        </asp:TemplateField>
        <asp:CommandField ButtonType="Link" ShowEditButton="true" />
    </Columns>
</asp:GridView>

فضاهای نام
باید نامهای زیر را وارد کنید.
C #

using System.Data;

VB.Net

Imports System.Data

 GridView اتصال ویرایش و به روز رسانی
در زیر کد مربوط به اتصال GridView و همچنین رسیدگی به رویدادهای ویرایش ، بروزرسانی و لغو وجود دارد.
C #

protected void Page_Load(object sender, EventArgs e)
{
    if (!Page.IsPostBack)
    {
        DataTable dt = new DataTable();
        dt.Columns.AddRange(new DataColumn[2] { new DataColumn("Item"), new DataColumn("Quantity") });
        dt.Rows.Add("Shirt", 450);
        dt.Rows.Add("Jeans", 3200);
        dt.Rows.Add("Trousers", 1900);
        dt.Rows.Add("Tie", 185);
        dt.Rows.Add("Cap", 100);
        dt.Rows.Add("Hat", 120);
        dt.Rows.Add("Scarf", 290);
        dt.Rows.Add("Belt", 150);
        ViewState["dt"] = dt;
        BindGrid();
    }
}
 
private void BindGrid()
{
    GridView1.DataSource = ViewState["dt"] as DataTable;
    GridView1.DataBind();
}
 
protected void OnRowEditing(object sender, GridViewEditEventArgs e)
{
    GridView1.EditIndex = e.NewEditIndex;
    this.BindGrid();
}
 
protected void OnRowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
    GridView1.EditIndex = -1;
    this.BindGrid();
}
 
protected void OnRowUpdating(object sender, GridViewUpdateEventArgs e)
{
    TextBox txtQuantity = GridView1.Rows[e.RowIndex].FindControl("txtQuantity") as TextBox;
    DataTable dt = ViewState["dt"] as DataTable;
    dt.Rows[e.RowIndex]["Quantity"] = !string.IsNullOrEmpty(txtQuantity.Text) ? txtQuantity.Text : "0";
    ViewState["dt"] = dt;
    GridView1.EditIndex = -1;
    this.BindGrid();
}

VB.Net

Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
    If Not Page.IsPostBack Then
        Dim dt As New DataTable()
        dt.Columns.AddRange(New DataColumn(1) {New DataColumn("Item"), New DataColumn("Quantity")})
        dt.Rows.Add("Shirt", 450)
        dt.Rows.Add("Jeans", 3200)
        dt.Rows.Add("Trousers", 1900)
        dt.Rows.Add("Tie", 185)
        dt.Rows.Add("Cap", 100)
        dt.Rows.Add("Hat", 120)
        dt.Rows.Add("Scarf", 290)
        dt.Rows.Add("Belt", 150)
        ViewState("dt") = dt
        BindGrid()
    End If
End Sub
 
Private Sub BindGrid()
    GridView1.DataSource = TryCast(ViewState("dt"), DataTable)
    GridView1.DataBind()
End Sub
 
Protected Sub OnRowEditing(sender As Object, e As GridViewEditEventArgs)
    GridView1.EditIndex = e.NewEditIndex
    Me.BindGrid()
End Sub
 
Protected Sub OnRowCancelingEdit(sender As Object, e As GridViewCancelEditEventArgs)
    GridView1.EditIndex = -1
    Me.BindGrid()
End Sub
 
Protected Sub OnRowUpdating(sender As Object, e As GridViewUpdateEventArgs)
    Dim txtQuantity As TextBox = TryCast(GridView1.Rows(e.RowIndex).FindControl("txtQuantity"), TextBox)
    Dim dt As DataTable = TryCast(ViewState("dt"), DataTable)
    dt.Rows(e.RowIndex)("Quantity") = If(Not String.IsNullOrEmpty(txtQuantity.Text), txtQuantity.Text, "0")
    ViewState("dt") = dt
    GridView1.EditIndex = -1
    Me.BindGrid()
End Sub

 


دانلود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

ارسال نظر
ارسال پیام به :