الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل قائمة منسدلة dropdown list ديناميكة

مغلق
بدأه anasalama في 28 مارس 2005 · 5 رد · 995 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم أيها الخبراء ....

محسوبكم بدا يتعلم الـasp.net مؤخرا ورغم ان عندي خبرة جيدة بالـ classic asp إلا اني ما زلت أجد بعض الصعوبة .. المهم ما نطول عليكم

أرغب بعمل قائمة منسدلة dropdown list ديناميكة أي أنها تحصل على القيم من جدول في قاعدة بيانات Sql server (يمكن استخدام قاعدة بيانات NorthWind)

أفيدونا أفادكم الله ...

أنــس عــمــار

#2

انا اعتقد اني فهمت قصدك

عموما ساشرح واتمنى تكون المطلوب

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

اول شيئ:::::تختار من الWebControl اداة DropDownList

تاني شيئ::::تغير في خصائصها وتعمل التالي تسميها اي اسم ترغب به ثم

خاصية DataTextField تكتب فيها اسم الحقل الذي تريد ان تحويه القائمة من قاعدة البيانات

خاصيةDataVlueField تكتب فيها اسم الPK الموجود في الجدول الذي فيه الحقل الذي تريد ان يظهر في القائمة

تالت شيئ تعمل في صفحة الكود functionتكتب فيها التالي

C#

private sub FunctionName()
{
If (!IsPostBack)
 {  
                        
 String prov="Provider=Microsoft.Jet.OleDb.4.0;Data Source=" &Server.MapPath("databasename.mdb")
 OleDbConnection cn=new OleDbConnection(prov);
 string sql="Select * From tablename";
 OleDbDataAdapter da=new OleDbDataAdapter(sql,cn);
 cn.Open();
 DataSet ds=new DataSet();
 da.Fill(ds,"fieldname");
 dropdownlistname.DataSource=ds.Tables["fieldname"].DefaultView;
 dropdownlistname.DataBind();
 cn.Close();
 }
}

VB.NET

sub FunctionName()
  If Not IsPostBack then
  Dim cn As OleDbConnection
  Dim da As OleDbDataAdapter
  dim ds as New DataSet
  Dim prov As String
  prov="Provider=Microsoft.Jet.OleDb.4.0;Data Source=" &Server.MapPath("databasename.mdb")
  cn=New OleDbConnection(prov)
 dim sql as String
  sql="Select * From tablename"
  da=New OleDbDataAdapter(sql,cn)
   cn.Open()
   da.Fill(ds,"fieldname")
   dropdownlistname.DataSource=ds.Tables("fieldname").DefaultView
   dropdownlistname.DataBind()
   cn.Close()
    end if
    end sub

-------------------------------------------------------------------------------------------------------------------

هذا كل شيئ

لكن هذا الكود لقاعدة بيانات بالاكسس وانا لااستخدم sqlserverلحتى الان لكن تحويلها سهل جداااااااااااااااااااا

انا لااذكر

اعتقد والله اعلم

انه بدل

OleDb----------->sql

provider سوف تتغير جملته وبسسسسسسسسسسسس

كنت عارفاها لكن مش متاكدة منها الان

لو سالت احد يعرف sqlserverوasp.net

اكيييييييييييييييد يعرف

يعني اشي بسيط التحويل

اتمنى يكون الكود هوة المطلوب

وهو صحيح 100% لاني استخدمه ويعمل صح

تحياتي

السلام عليكم

#3

شكرا جزيلا ..

سأجرب الكود وأعود حالا ....

أنــس عــمــار

#4

الأخت فرح ....

تحية طيبة

لقد جربت الكود ولكن لم تظهر لي نتيجة علما بأني قمت باتباع نفس الخطوات

لاحظت وجود سطر يظهر تحت عبارة :

OleDbConnection

علماً بأني أضفت في أعلى ملف الـASPX عبارة :

<%@ Import Namespace="System.Data.OleDb" %>

فما رأيكم دام فضلكم ؟؟

أنــس عــمــار

#5

السلام عليكم

انا اسفة نسيت ان احكيلك تعمل callلكل ال functions

اللي عملتها

تعمل call لها في ال Page_load

اتمنى ان يعمل معك

وانا متاكدة انه سوف يعمل ان شاءالله لانو عندي 100%

عموما ان مااشتغل يمكنك اخباري

تحياتي

#6

بدلا من اضافة <%@ Import Namespace="System.Data.OleDb" %> في ملف ال Aspx

اضف imports system.data.oledb داخل ملف الكود code behind

ايضا المثال السابق خاص بأكسس، ان كنت تستخدم SqlServer استخدم SqlConnection بدلا منه وايضا SqlDataAdapter

وان كنت احبذ إستخدام DataReader بدلا من DataAdapter لانه اسرع

لا تحزن:

إن كنت فقيرا فغيرك محبوس في دين، وإن كنت لا تملك وسيلة نقل فسواك مبتور القدمين، وان كنت تشكوا من آلام فغيرك يرقدون على الاسرة البيضاء و من سنوات، وان فقدت ولدا فغيرك فقد عددا من الأولاد و في حادث واحد.

لا تحزن:

فأنت تشرب الماء الزلال، و تستنشق الهواء الطلق، و تمشي على قدميك معافى، و تنام ليلك آمنا.

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…