PDA

View Full Version : حل مشكل ترتيب رديف با استفاده از اين برنامه



esafb52
یک شنبه 08 بهمن 1391, 08:27 صبح
با سلام به همه اساتيد
چند سوال :
1-من براي حل مشكل ترتيب رديف در ديتا گريد زياد سرچ كردم بعضي ها با حلقه for حلش كردن اين برنامه هم بدون استفاده از حلقه For حلش كرده ولي اگه بخواهم يه ستون اضافه كنم ديتاگريد چون به ديتا بيس بايند شده اين ستون رو نشنون نميده؟چطور ميتونم هم يه ستون داشته باشم كه رديف بر حسب ترتيب باشه كه با حذف يه مورد ترتبيش به هم نخورهو هم برنامه به ديتابيس بايند شده باشه ؟ اگه يه مثلا ساده از كدش بنويسن ممنون ميشم خصوصا در حين حذف چون براي اضافه كردن تونستم كدش رو بنويسم اما براي حذف نتونستم!!!
2- من در يك پروژه dll دات نت بار رو ژيدا كردم و تو برنامه ام ازش استفاده كردم آيا خود برنامه بايد نصب بشه تو سيستم خودم يا همين كافيه چون ميتونم ازش استفاده كنم؟؟؟
3- چطور يه ستاپ بسازم كه وقتي تو سيستم ديگه نصب ميشه فايل ها همه فقط تو يه فايل exe اجرا بشن مثلا برنامه اي ديدم كه حجمش 10 مگ بود (فايل exe) و فقط يه فايل exe درصورتيكه چقد ابزار درونش وجود داشت مثل دات نت بارو......
4-چطور با يه حلقه for مي تونم روي ديتابيس يك دستور sql اجرا كنم كه بزگترين id رو پيدا و سپس اطلاعات اون ستون رو حذف و از يك تا اون مرتب كنم؟
ممنون از لطف شما

a.ameri
یک شنبه 08 بهمن 1391, 11:33 صبح
select ROW_NUMBER() OVER (Order by [ColumnName]) as Radif ,* from TableName

danialafshari
یک شنبه 08 بهمن 1391, 11:35 صبح
سلام
باید یک فیلد ID به جدولتون اضاف کنید
دیتابیس رو از چه طریق به برنامه وصل کنید؟ Binding Source یا کد نویسی؟

esafb52
یک شنبه 08 بهمن 1391, 11:55 صبح
ممنون از پاسختون کد نویسی ضمنا اگه مثالی از کد باشه که مسئله رو درک کنم بهتره اگه توضیحی راجب سوالات دیگه هم بدین ممنون میشم
ممنون

danialafshari
یک شنبه 08 بهمن 1391, 12:10 عصر
سلام


2- من در يك پروژه dll دات نت بار رو ژيدا كردم و تو برنامه ام ازش استفاده كردم آيا خود برنامه بايد نصب بشه تو سيستم خودم يا همين كافيه چون ميتونم ازش استفاده كنم؟؟؟
میگن میشن ولی من خاطره خوشی ندارم


3- چطور يه ستاپ بسازم كه وقتي تو سيستم ديگه نصب ميشه فايل ها همه فقط تو يه فايل exe اجرا بشن مثلا برنامه اي ديدم كه حجمش 10 مگ بود (فايل exe) و فقط يه فايل exe درصورتيكه چقد ابزار درونش وجود داشت مثل دات نت بارو......
راهش پرتابل کردن برنامه است Portable


4-چطور با يه حلقه for مي تونم روي ديتابيس يك دستور sql اجرا كنم كه بزگترين id رو پيدا و سپس اطلاعات اون ستون رو حذف و از يك تا اون مرتب كنم؟
نیازی به حلقه For نیست می تونی از خود دستورات SQL استفاده کنی
SELECT MAX(ID) AS Expr1
FROM dbo.Table_1
کد مرتب سازی هم که آسونه

موفق باشی

esafb52
یک شنبه 08 بهمن 1391, 12:24 عصر
با سلام 1-در مورد ستاپ باید بگم اون برنامه قابلبیت نصب داشت و نصبش کردم اما برنامه های پرتابل نصب نمیشن؟میشن؟؟؟؟!!!!
بانک من اکسس هست!!
من فکرم اینه که یه ستون بذارم تو دیتا بیس و یک دکمه و از همون روش سابق استفاده کنم بعد کدش رو جوری بنویسم که کاربرهر وقت خواست بیاد تعداد سطرها رو حساب کنه(چون بزرگترین همیشه بدرد نمیخوره اومدیم یکی و دوتا رو حذف کردیم!!!)و دادهای اون ستون رو پاک و از اول تا آخر رو شماره گذاری کنه؟حالا با چه دستوری و چطورش نمیدونم؟؟؟!!

danialafshari
یک شنبه 08 بهمن 1391, 12:29 عصر
1-در مورد ستاپ باید بگم اون برنامه قابلبیت نصب داشت و نصبش کردم اما برنامه های پرتابل نصب نمیشن؟میشن؟؟؟؟!!!!
بانک من اکسس هست!!

Setup براش فرقی نمیکنه که چیو Setup میکنه شما می تونی برا عکس هم setup بسازی
شما می تونی ابتدا فایل رو پرتابل کنی بعد براش Setup بسازی
موفق باشی

esafb52
یک شنبه 08 بهمن 1391, 12:36 عصر
برای عکس ستاپ ساختم حتی با خود ویندوز هم میشه اما اینو نمیدونستم "فایل رو پرتابل کنی بعد براش Setup بسازی" حالا من این مشکل ردیف رو چطور حل کنم!!!!

Mahmoud.Afrad
یک شنبه 08 بهمن 1391, 14:28 عصر
برای ایجاد شماره ردیف ، یک ستون از طریق راست کلیک به دیتاگرید اضافه کنید و این ستون را readonly کنید. حالا ایجاد شماره ردیف را در رویداد مناسب به عهده گریدویو بگذارید اینطوری با حذف و یا اضافه شدن سطر ، شماره ردیف اصلاح خواهد شد:

private void dataGridView1_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
dataGridView1.Rows[e.RowIndex].Cells[0].Value = e.RowIndex + 1;
}