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

نحوه جمع آوری DropDownList در GridView در ASP.Net
0 0
نحوه جمع آوری DropDownList در GridView در ASP.Net

با سلام این مقاله نحوه اتصال DropDownList را در ArticleTemplate از GridView توضیح می دهد.
نمونه زیر نام مشتریان و کشورهای مربوطه را در DropDownList  نشان می دهد
بانک اطلاعات
برای این مقاله از پایگاه داده Northwind استفاده کرده ایم. می توانید با استفاده از لینک موجود آن را دانلود کنید.
پایگاه داده Northwind را بارگیری کنید
فضاهای نام
باید نامهای زیر را وارد کنید.
C #

using System.Data;
using System.Configuration;
using System.Data.SqlClient;

VB.Net

Imports System.Data
Imports System.Configuration
Imports System.Data.SqlClient

کد HTML
کد HTML شامل GridView با DropDownList در ArticleTemplate از TemplateField است.

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnRowDataBound="OnRowDataBound">
    <Columns>
        <asp:BoundField HeaderText="Name" DataField="ContactName" />
        <asp:TemplateField HeaderText = "Country">
            <ItemTemplate>
                <asp:Label ID="lblCountry" runat="server" Text='<%# Eval("Country") %>' Visible = "false" />
                <asp:DropDownList ID="ddlCountries" runat="server">
                </asp:DropDownList>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

اتصال به GridView
کد زیر GridView را با پرونده فایل های جدول Customer در پایگاه داده Northwind متصل می کند .
C #

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        GridView1.DataSource = GetData("SELECT ContactName, Country FROM Customers");
        GridView1.DataBind();
    }
}
 
private DataSet GetData(string query)
{
    string conString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
    SqlCommand cmd = new SqlCommand(query);
    using (SqlConnection con = new SqlConnection(conString))
    {
        using (SqlDataAdapter sda = new SqlDataAdapter())
        {
            cmd.Connection = con;
            sda.SelectCommand = cmd;
            using (DataSet ds = new DataSet())
            {
                sda.Fill(ds);
                return ds;
            }
        }
    }
}

VB.Net

Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
    If Not IsPostBack Then
        GridView1.DataSource = GetData("SELECT ContactName, Country FROM Customers")
        GridView1.DataBind()
    End If
End Sub
 
Private Function GetData(query As String) As DataSet
    Dim conString As String = ConfigurationManager.ConnectionStrings("constr").ConnectionString
    Dim cmd As New SqlCommand(query)
    Using con As New SqlConnection(conString)
        Using sda As New SqlDataAdapter()
            cmd.Connection = con
            sda.SelectCommand = cmd
            Using ds As New DataSet()
                sda.Fill(ds)
                Return ds
            End Using
        End Using
    End Using
 آوریEnd Function

اتصال DropDownList  در ArticleTemplate
رویداد RowDataBound از GridView برای اتصال DropDownList با کشورها از پایگاه داده Northwind استفاده می شود ، به محض اینکه DropDownList جمع آوری شد ، کشوری که مشتری به آن تعلق دارد ، به عنوان منتخب در DropDownList انتخاب می شود.
C #

protected void OnRowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        //Find the DropDownList in the Row
        DropDownList ddlCountries = (e.Row.FindControl("ddlCountries") as DropDownList);
        ddlCountries.DataSource = GetData("SELECT DISTINCT Country FROM Customers");
        ddlCountries.DataTextField = "Country";
        ddlCountries.DataValueField = "Country";
        ddlCountries.DataBind();
 
        //Add Default Item in the DropDownList
        ddlCountries.Items.Insert(0, new ListItem("Please select"));
           
        //Select the Country of Customer in DropDownList
        string country = (e.Row.FindControl("lblCountry") as Label).Text;
        ddlCountries.Items.FindByValue(country).Selected = true;
    }
}

VB.Net

Protected Sub OnRowDataBound(ByVal sender As Object, ByVal e As GridViewRowEventArgs)
    If (e.Row.RowType = DataControlRowType.DataRow) Then
       
       'Find the DropDownList in the Row
        Dim ddlCountries As DropDownList = CType(e.Row.FindControl("ddlCountries"), DropDownList)
        ddlCountries.DataSource = GetData("SELECT DISTINCT Country FROM Customers")
        ddlCountries.DataTextField = "Country"
        ddlCountries.DataValueField = "Country"
        ddlCountries.DataBind()
 
        'Add Default Item in the DropDownList
        ddlCountries.Items.Insert(0, New ListItem("Please select"))
       
        'Select the Country of Customer in DropDownList
        Dim country As String = CType(e.Row.FindControl("lblCountry"), Label).Text
        ddlCountries.Items.FindByValue(country).Selected = True
    End If
End Sub

عکس صفحه

 


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

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