PDA

View Full Version : آموزش: ريختن يك فيلد خاص حاصل از نتيجه DataRow در گريد ويو



csharpprogramer88
پنج شنبه 06 آبان 1389, 21:07 عصر
سلام



if (dsUser.Tables["Users"].Rows.Count != 0)
{
DataRow drUser = dsUser.Tables["Users"].Rows[0];

txtPassword.Text = drUser["Password"].ToString();
txtUsername.Text = drUser["Username"].ToString();
txtEmail.Text = drUser["Email"].ToString();
{

من يك دستور سلكت نوشتم و در اين كدي كه براتون فرستادم شرط گذاشتم اگر دستور سلكت رديفي را بر مي گردونه ، بياد و هر يك از ستون هاي برگردانده شده را در تكست باكس مربوطه نشان دهد

حالا ميخوام به جاي اينكه در تكست باكس اطلاعات را نشان بدم فقط يك ستون را ( مثلا ايميل را ) در يك ستون از ديتا گريد نشان بدم

من تازه ASP را شروع كردم و نياز به كمك بيشتر عزيزان اين تالار دارم
با تشكر

mahmood5532
پنج شنبه 06 آبان 1389, 21:28 عصر
فک کنم با کد زیر مشکل شما حل شه :


foreach (GridViewRow gr in this.gridview1.row)
gr.cell[1].text = drUser["Email"].ToString();

csharpprogramer88
پنج شنبه 06 آبان 1389, 21:43 عصر
فک کنم با کد زیر مشکل شما حل شه :


foreach (GridViewRow gr in this.gridview1.row)
gr.cell[1].text = drUser["Email"].ToString();




this.gridview1.row
به قرمز ارور ميگيره

csharpprogramer88
پنج شنبه 06 آبان 1389, 22:52 عصر
if (ds.Tables["pages"].Rows.Count != 0)
{
GridView1.DataSource = ds.Tables["pages"];
GridView1.DataBind();
}


چك ميكنه اگر رديفي وجود داره همه رديف ها را بدون مشكل در گريد مي ريزه ولي من ميخوام مثلا از بين 5 تا فيلد يك فيلد را نمايش بدهد.
لطفا كمك كنيد

karim orooji
جمعه 07 آبان 1389, 08:55 صبح
سلام دوست عزیز باید بیای برای کار مورد نظر شرط بزاری

csharpprogramer88
جمعه 07 آبان 1389, 09:20 صبح
سلام دوست عزیز باید بیای برای کار مورد نظر شرط بزاری

به نظر نميرسه به شرط نيازباشه

توي كد بالا


GridView1.DataSource = ds.Tables["pages"];

چطوري بايد به يك فيلد دسترسي داشته باشم

baran_mehr
جمعه 07 آبان 1389, 19:15 عصر
سلام
من نمیدونم چه اجباریه که همه میخوان از دیتاست استفاده کنن در صورتی که جداول چندانی هم در کار نیست.
دوست عزیز کار شما با یه دیتا تیبل هم راه میفته و دسترسی به اون هم راحت تر هست
شما نتیجه دستور select خودتون رو داخل datatable بریز و بعد هر کاری دوست داری روش انجام بده
کدهای من به ویبی هست خودتون تغییر بدید
متغییر های مورد نیاز:


Dim cnt As Data.SqlClient.SqlConnection = New Data.SqlClient.SqlConnection("ادرس کانکشن")
Dim cmd As Data.SqlClient.SqlCommand = New Data.SqlClient.SqlCommand
Dim da As Data.SqlClient.SqlDataAdapter = New Data.SqlClient.SqlDataAdapter
Dim dt As Data.DataTable

اینجا هم دستور اسکیوال


cmd.CommandText ="دستور جستجو"
cmd.Connection = cnt
dt.Clear()
da.SelectCommand = cmd
da.Fill(dt)برای ارتباط با گرید :

GridView1.DataSource=dt

اینم مقدار یک سلول:

dt.Rows.Item(0).Item(0).ToString()
به جای این کد:

if (dsUser.Tables["Users"].Rows.Count != 0)
برای برسی وجود رکورد یا داده تو datatable هم میتونی کد زیرو استفاده کنی:

if (dt.HasRows())
{
}

karim orooji
جمعه 07 آبان 1389, 20:44 عصر
با سلام حق با دوستمونه جناب اقایbaran_mehr (http://barnamenevis.org/forum/member.php?u=57508)

شما نتیجه دستور select خودتون رو داخل datatable بریز و بعد هر کاری دوست داری روش انجام بده
این برنامه رو برای شما آماده کردم حالت همون لاگین که اگه شرط مورد نظر برقرار باشه میاده اطلاعات رو نمایش میده(در گرید)
از همون روش select انجام میشه

baran_mehr
شنبه 08 آبان 1389, 18:59 عصر
اقا و یا خانومه baran_mehr
سلام اقا کریم:تشویق:
دست شما درد نکنه دیگه
عکسم به اون بزرگی گوشه پست هام هست اون وقت شما میگید..:اشتباه::چشمک: