PDA

View Full Version : سوال: راهنمایی در نوشتن دفترچه تلفن



ho2o2oo
جمعه 02 تیر 1391, 02:18 صبح
با سلام به تمامی دوستان و اساتید . من در حال یاد گیریی زبان C# هستم با دوستان که مشورت کردم گفتم یه دفتر چه تلفن بنویس که به اسکیوال وصل بشه دوستان می تونن در نوشتنش بهم کمک کنند که بنده یاد بگیرم . ممنون .

uniqueboy_ara
جمعه 02 تیر 1391, 07:13 صبح
خیلی هم خوبه :)
یه دفترچه تلفن که 4 عمل رو توش داشته باشه ( اضافه-حذف-ویرایش-select ) خیلی میتونه تجربه خوبی واسه اول کار باشه :)
حالا که تازه داری شروع میکنی، سعی کن با EF شروع کنی

ahmadreza517
جمعه 02 تیر 1391, 08:59 صبح
به نام تنها برنامه نویس هستی
سلام ,

برای کار با database روش و تکنولوژی زیادی هست با کدوم دوست دارید شروع کنید.

Farshid007
جمعه 02 تیر 1391, 09:22 صبح
اول یه طرح کلی رو کاغذ پیاده سازی کن تا بدونی اصلا چی کار می خواهی کنی و در وسط راه دچار سردرگمی نشی
سپس بسم الله
شروع کن به طراحی جدول SQL

موفق باشید./

Farshid007
جمعه 02 تیر 1391, 09:23 صبح
به نام تنها برنامه نویس هستی
سلام ,

برای کار با database روش و تکنولوژی زیادی هست با کدوم دوست دارید شروع کنید.


برای استارت SQL خوبه داداش

ho2o2oo
جمعه 02 تیر 1391, 11:23 صبح
خیلی هم خوبه :)
یه دفترچه تلفن که 4 عمل رو توش داشته باشه ( اضافه-حذف-ویرایش-select ) خیلی میتونه تجربه خوبی واسه اول کار باشه :)
حالا که تازه داری شروع میکنی، سعی کن با EF شروع کنی

ممنون اقا . اما می شه در مورد EF بیشتر بهم توضیح بدید ممنونم .


به نام تنها برنامه نویس هستی
سلام ,

برای کار با database روش و تکنولوژی زیادی هست با کدوم دوست دارید شروع کنید.

ممنونم از کمکت اقا . اگه به منه همش رو دوست دارم یاد بگیرم .از هر کدوم می دونید


برای استارت SQL خوبه داداش

دستت طلا خوبه . کلا چنتا روش ارتباطی با سرور هست از طریق C#

Farshid007
جمعه 02 تیر 1391, 11:33 صبح
LinQ
Oracle
OleDB
SQL
...

Farshid007
جمعه 02 تیر 1391, 11:39 صبح
اینم یه نمونه (http://barnamenevis.org/showthread.php?347292-%D8%AF%D8%A7%D9%86%D9%84%D9%80%D9%80%D9%80%D9%80%D 9%80%D9%80%D9%88-%D8%AF-%DA%A9%D9%86%D9%80%D9%80%D9%80%D9%80%D9%80%D9%80%D 9%80%D9%80%DB%8C%D8%AF-%D8%AF%D9%81%D8%AA%D8%B1%DA%86%D9%87-%D8%AA%D9%84%D9%81%D9%86-%28%D8%B2%DB%8C%D8%A8%D8%A7-%D9%88-%D8%A8%DB%8C-%D8%B9%DB%8C%D8%A8%29)
البته سعی نکن از رو این بنویسی
اینو من نوشتم
مثل دیونه ها نوشتمش خودم هم از تو سورس کد هاش هیچی سر در نمی ارم (خیلی پیچ درن پیچ نوشتمش)

Farshid007
جمعه 02 تیر 1391, 11:45 صبح
اینم یه پروژه مناسب دیگه بعد این پروژت بنویس:

نرم افزار مدیریت کتابخانه
-بخش عمومی
-نمایش تمام کتاب ها
- جستجو بر اساس نام کتاب ، نام ناشر ، سال انتشار کتاب موضوع ..
- دسته بندی در موضوعات مختلف
-و...
-بخش مدیریت
-CRUD (یعنی Create - Read -Update -Delete)
-مدیریت امانتی ها
-چاپ گزارش


*به این می گن طرح کلی

ho2o2oo
جمعه 02 تیر 1391, 12:09 عصر
اینم یه پروژه مناسب دیگه بعد این پروژت بنویس:

نرم افزار مدیریت کتابخانه
-بخش عمومی
-نمایش تمام کتاب ها
- جستجو بر اساس نام کتاب ، نام ناشر ، سال انتشار کتاب موضوع ..
- دسته بندی در موضوعات مختلف
-و...
-بخش مدیریت
-CRUD (یعنی Create - Read -Update -Delete)
-مدیریت امانتی ها
-چاپ گزارش


*به این می گن طرح کلی

سلام مرسی اینشالا این هم شروع می کنم البته کمک هم می خوام . وقتی این تمام شد . مرسی



اینم یه نمونه (http://barnamenevis.org/showthread.php?347292-%D8%AF%D8%A7%D9%86%D9%84%D9%80%D9%80%D9%80%D9%80%D 9%80%D9%80%D9%88-%D8%AF-%DA%A9%D9%86%D9%80%D9%80%D9%80%D9%80%D9%80%D9%80%D 9%80%D9%80%DB%8C%D8%AF-%D8%AF%D9%81%D8%AA%D8%B1%DA%86%D9%87-%D8%AA%D9%84%D9%81%D9%86-%28%D8%B2%DB%8C%D8%A8%D8%A7-%D9%88-%D8%A8%DB%8C-%D8%B9%DB%8C%D8%A8%29)
البته سعی نکن از رو این بنویسی
اینو من نوشتم
مثل دیونه ها نوشتمش خودم هم از تو سورس کد هاش هیچی سر در نمی ارم (خیلی پیچ درن پیچ نوشتمش)

مرسی اقا نه اما اگه از نظرت مشکلی نداره الگو برداری کنم و ببنم .



LinQ
Oracle
OleDB
SQL
...

از این هایی که گفتین کدوم بهتره و بعد برای استفاده کاربر راحت تره .

amir-aa
جمعه 02 تیر 1391, 12:35 عصر
من خودم از اکسس شروع کردم برای کار با بانک اطلاعاتی.البته برای شروع ساختن برنامه های محاسباتی هم خوبه ولی به قول این استادمون شما اول روی کاغذ یه حالت فلوچارت بکش بعد شروع کنید.روی ظاهرش هم با کامپوننت های مختلف کار کن تا کار با اون هارو یاد بگیرید.

ho2o2oo
جمعه 02 تیر 1391, 13:31 عصر
سلام به تمامی دوستان به اونوان اولین سوالم که شروع کردم الان به سوال :قلب::خجالت:

1. من بر روی گزینه Add New Item کلیک کردم و گزینه Local DataBase رو انتخاب کردم . فکر می کنم با این کار دیتابیس در برنامه اضافه می شه و نیازی به SQL نداره برای کلاینت اگر اشتباه می کنم دوستان بگن بهم (من نمی خوام به هیچ انوان کلاینت روی دستگاهش چیزی نصب کنه مثل SQL و Acces و ... ) و اینکه چطور می تونم برنامم رو به این SQl وصل کنم که عمل ذخیره سازی انجام بشه .

2. من چطور می تونم متنی در تکست باکس بنویسم که کمرنگ باشه و وقتی کاربر بر روی ان کلیک می کند متن مورد نظر پاک شود . من این عمل رو می خوام در textbox و textboxcontrol انجام بدم .


پیشا پیش از تمام دوستان تشکر می کنم . ممنونم از همه .:قلب:

veniz2008
جمعه 02 تیر 1391, 14:08 عصر
با سلام، شما برای اضافه کردن داده به بانک باید مفاهیم اتصال به بانک رو یاد بگیرید،همونطوری که دوستان گفتن روش های زیادی وجود داره(ADO.NET, LINQ,...)، بافرض اینکه از ado.net استفاده کنی شما اول باید یه کانکشن استرینگ داشته باشی(کارش اینه که برنامه رو به دیتابیس وصل میکنه)،اگه به اینترنت پر سرعت دسترسی داری برو به سایت www.ehsanavr.com (http://www.ehsanavr.com) ، اونجا یه آموزش ویدئویی درباره ADO.NET هست که قشنگ این مباحث رو نشونت میده.

ho2o2oo
جمعه 02 تیر 1391, 14:48 عصر
بله اقا اینترنت دارم در حال حاظر دارم دانلودش می کنم ممنونتم دادا .

uniqueboy_ara
جمعه 02 تیر 1391, 15:23 عصر
کلمه EF، مخفف Entity Framework هستش، آخرین تکنولوژی کار با پایگاه داده :)
در کل 2 روش برای کار با پایگاه داده وجود داره : 1. ADO.net و 2. روش های شی گرا ( EF )
روش دوم فوق العاده راحت تر هستش و برنامه سریع تر نوشته میشه و خوانای بالاتره و خطایابی راحت تره و تغییر راحت تره و... :لبخند:

حالا پیشنهاد من:
پایگاه داده : SQLite ( به دلیل اینکه میخوای کاربر هیچی رو سیستمش نصب نکنه )
تکنولوژی ارتباط : EF

ho2o2oo
جمعه 02 تیر 1391, 16:02 عصر
سلام اقا اموزشی چیزی دارین بهم بدید که کار باهاش رو یاد بگیرم خیلی کمک بزرگی کردی بهم اگه این کار رو کنی واسم ممنون می شم دادا .

uniqueboy_ara
جمعه 02 تیر 1391, 16:07 عصر
اینجا (http://barnamenevis.org/showthread.php?313523-%DA%A9%D8%A7%D8%B1%DA%AF%D8%A7%D9%87-%D8%B9%D9%85%D9%84%DB%8C-%D8%B3%D8%A7%D8%AE%D8%AA-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%AB%D8%A8%D8%AA-%D8%B3%D9%81%D8%A7%D8%B1%D8%B4%D8%A7%D8%AA-%D9%85%D8%B1%D8%AD%D9%84%D9%87-%D8%A8%D9%87-%D9%85%D8%B1%D8%AD%D9%84%D9%87) آموزشای خوبی میتونی پیدا کنی
فیلمارو ببین، اگه مشکلی هم داشتی بپرس، دوستان راهنماییت میکنن

Farshid007
جمعه 02 تیر 1391, 21:29 عصر
در رابطه با متن کمرنگ تو تکست باکس

به اون میگن watermark که می تونی یه نمونه اش رو از لینک زیر بگیری:
http://www.codeproject.com/Articles/27849/WaterMark-TextBox-For-Desktop-Applications-Using-C

ولی اینو ول کن بیا کد هاشو بدم خودت بساز:

اول یه کلاس به پروژه ات اضافه کن با اسم watermarkTextbox.cs

بعد هرچی کد توش هست پاک کن و اینارو کپی کن:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace your application name here
{
class WatermarkTextBox : TextBox
{
private const uint ECM_FIRST = 0x1500;
private const uint EM_SETCUEBANNER = ECM_FIRST + 1;

[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, uint wParam, [MarshalAs(UnmanagedType.LPWStr)] string lParam);

private string watermarkText;
public string WatermarkText
{
get { return watermarkText; }
set
{
watermarkText = value;
SetWatermark(watermarkText);
}
}

private void SetWatermark(string watermarkText)
{
SendMessage(this.Handle, EM_SETCUEBANNER, 0, watermarkText);
}

}

}

اونجایی که گفته your application name here (بعد namespace) اسم پروژه ات رو بنویس
بعد برنامتو build کن(از منوی solution explorer روی برنامت کلیک راست کن و بیلد رو بزن)

بعد یه ابزار تو tool box همون اولش تو گروه اول (که به اسم برنامت هست ایجاد میشه)
می تونی ازش استفاده کنی

ho2o2oo
جمعه 02 تیر 1391, 22:25 عصر
اینجا (http://barnamenevis.org/showthread.php?313523-%DA%A9%D8%A7%D8%B1%DA%AF%D8%A7%D9%87-%D8%B9%D9%85%D9%84%DB%8C-%D8%B3%D8%A7%D8%AE%D8%AA-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%AB%D8%A8%D8%AA-%D8%B3%D9%81%D8%A7%D8%B1%D8%B4%D8%A7%D8%AA-%D9%85%D8%B1%D8%AD%D9%84%D9%87-%D8%A8%D9%87-%D9%85%D8%B1%D8%AD%D9%84%D9%87) آموزشای خوبی میتونی پیدا کنی
فیلمارو ببین، اگه مشکلی هم داشتی بپرس، دوستان راهنماییت میکنن

سلام اقا از روشی که شما معرفی کردید انجام دادم . اما مشکل اینه که چیزی ذخیره نمی شه و من پروژه رو 5 بار چک کردم چیزی پیدا نکردم . اگه می شه شما و اساتید یه نگاه بهش بندازید راستی پروژه هم اروری نداره .



در رابطه با متن کمرنگ تو تکست باکس

به اون میگن watermark که می تونی یه نمونه اش رو از لینک زیر بگیری:
http://www.codeproject.com/Articles/27849/WaterMark-TextBox-For-Desktop-Applications-Using-C

ولی اینو ول کن بیا کد هاشو بدم خودت بساز:

اول یه کلاس به پروژه ات اضافه کن با اسم watermarkTextbox.cs

بعد هرچی کد توش هست پاک کن و اینارو کپی کن:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;
using System.Windows.Forms;

namespace your application name here
{
class WatermarkTextBox : TextBox
{
private const uint ECM_FIRST = 0x1500;
private const uint EM_SETCUEBANNER = ECM_FIRST + 1;

[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, uint wParam, [MarshalAs(UnmanagedType.LPWStr)] string lParam);

private string watermarkText;
public string WatermarkText
{
get { return watermarkText; }
set
{
watermarkText = value;
SetWatermark(watermarkText);
}
}

private void SetWatermark(string watermarkText)
{
SendMessage(this.Handle, EM_SETCUEBANNER, 0, watermarkText);
}

}

}

اونجایی که گفته your application name here (بعد namespace) اسم پروژه ات رو بنویس
بعد برنامتو build کن(از منوی solution explorer روی برنامت کلیک راست کن و بیلد رو بزن)

بعد یه ابزار تو tool box همون اولش تو گروه اول (که به اسم برنامت هست ایجاد میشه)
می تونی ازش استفاده کنی


سلام اقا ممنونم از راهنماییت دارم روش کار می کنم . برنامم یه مشکل داره اگه می شه بهش یه نگاه بندازید و بهم بگید چطور می تونم حلش کنم . چون خودم نتونستم .برنامه هم اروری نمی ده . دیتا بیس هم ذخیره نمی شه چیزی از روش زیر هم استفاده کردم .

لینک تاپیک مربوط
(http://barnamenevis.org/showthread.php?313523-%DA%A9%D8%A7%D8%B1%DA%AF%D8%A7%D9%87-%D8%B9%D9%85%D9%84%DB%8C-%D8%B3%D8%A7%D8%AE%D8%AA-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%AB%D8%A8%D8%AA-%D8%B3%D9%81%D8%A7%D8%B1%D8%B4%D8%A7%D8%AA-%D9%85%D8%B1%D8%AD%D9%84%D9%87-%D8%A8%D9%87-%D9%85%D8%B1%D8%AD%D9%84%D9%87&p=1378941&viewfull=1#post1378941)

لینک پروژه (http://www.uploadbaz.com/5ppij2jf03oa)

Farshid007
جمعه 02 تیر 1391, 22:52 عصر
من Telerik ندارم همه چی بهم ریخت نمی تونم بهش نگاه بندازم

sedigh_zarei
جمعه 02 تیر 1391, 23:52 عصر
سلام
من با LinQ , sql کار کردم LinQ خیلی راحته ولی انعطاف پذیر نیست با Sql هر کاری بخوای میتونی انجام بدی.

uniqueboy_ara
جمعه 02 تیر 1391, 23:57 عصر
سلام
من با LinQ , sql کار کردم LinQ خیلی راحته ولی انعطاف پذیر نیست با Sql هر کاری بخوای میتونی انجام بدی.

شما چه کاری خواستی بکنی که با LINQ نشده؟

ho2o2oo
چهارشنبه 07 تیر 1391, 16:52 عصر
سلام به تمام دوستان . چنتا سوال برام پیش اومد در ادامه این پروژه ممنون می شم کمکم کنید .

1. من چطور می تونم کاری کنم که متن داخل تکست باکس با کلیک اولیه پاک بشه . اما اگر کار بر کلیک دوم رو انجام داد نمی خوام این اتفاق بیوفته .
2.من چطور می تونم برای هر تکست باکس که پر نشده یک مسیج باکس درست کنم .
3.چطور می تونم یه سری فیلد رو طوری تنظیم کنم که حتما پر شود و اگر پر نشد ارور مربوط رو نشون بده در مسیج باکس به صورت فارسی .

و غیره که اینا اول مهم هستن تا بعد بقیه رو می پرسم مرسی از همه

alias136790
پنج شنبه 08 تیر 1391, 03:32 صبح
سلام
1. میتونی یه متغیر تعریف کنی مثلا bool firstclick =true
و تو event
private void textBox1_Click(object sender, EventArgs e)
{
if firstclick=true
{
textbox1.clear;
firstclick=false;
}
}

و تو event
private void textBox1_Leave(object sender, EventArgs e)
{
firstclick = true;
}

2,3. خب بعد از این که تکس باکس ها رو پر کردی یه باتن داری مثلا باتن ثبت و تو قسمت کلیک باتن میتونی چک کنی که چه تکس باکسی خالی هست و ارور لازم رو
براش بنویسی
private void button1_Click(object sender, EventArgs e)
{
if (Textbox1.Text == string.Empty)
{
MessageBox.Show("lotfan qesmat textbox1 ra por konid", "information", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading);
}
}

که MessageBoxOptions.RtlReading برای اینه که متن داخل مسج باکس بصورت راست به چپ نمایش داده بشه(مخصوص متن فارسی و عربی)

حالا اگه بخوای تکس باکس فقط مقدار عددی بگیره مثلا شماره تماس
تکس باکس رو انتخاب کن بعد تو قسمت Properties ، قسمت events که به شکل رعد وبرق هست رو انتخاب کن بعد قسمت KeyPress رو انتخاب کن و این
کد ها رو بنویس
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(char.IsDigit(e.KeyChar) || char.IsControl(e.KeyChar)))
{
e.Handled = true;
}
}
بعد از اجرای برنامه میبین که ، تو Textbox1 فقط میتونی عدد بنویس و حروف و کاراکتر وارد نمیشه.

روز خوبی داشته باشین

ho2o2oo
پنج شنبه 08 تیر 1391, 20:44 عصر
سلام
1. میتونی یه متغیر تعریف کنی مثلا bool firstclick =true
و تو event
private void textBox1_Click(object sender, EventArgs e)
{
if firstclick=true
{
textbox1.clear;
firstclick=false;
}
}

و تو event
private void textBox1_Leave(object sender, EventArgs e)
{
firstclick = true;
}

2,3. خب بعد از این که تکس باکس ها رو پر کردی یه باتن داری مثلا باتن ثبت و تو قسمت کلیک باتن میتونی چک کنی که چه تکس باکسی خالی هست و ارور لازم رو
براش بنویسی
private void button1_Click(object sender, EventArgs e)
{
if (Textbox1.Text == string.Empty)
{
MessageBox.Show("lotfan qesmat textbox1 ra por konid", "information", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1, MessageBoxOptions.RtlReading);
}
}

که MessageBoxOptions.RtlReading برای اینه که متن داخل مسج باکس بصورت راست به چپ نمایش داده بشه(مخصوص متن فارسی و عربی)

حالا اگه بخوای تکس باکس فقط مقدار عددی بگیره مثلا شماره تماس
تکس باکس رو انتخاب کن بعد تو قسمت Properties ، قسمت events که به شکل رعد وبرق هست رو انتخاب کن بعد قسمت KeyPress رو انتخاب کن و این
کد ها رو بنویس
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (!(char.IsDigit(e.KeyChar) || char.IsControl(e.KeyChar)))
{
e.Handled = true;
}
}
بعد از اجرای برنامه میبین که ، تو Textbox1 فقط میتونی عدد بنویس و حروف و کاراکتر وارد نمیشه.

روز خوبی داشته باشین


سلام اقا ممنونم از راهنمایتون اگه می شه یکم ساده تر برام توضیح بدید . مبتدی هستم در حد زیر دیپلم . :خجالت:

دوستان کسی با تلریک کار کرده بگه چطور می تونم فرمم رو بالاش رو یعنب ریبون رو شیشه ایی کنم مثل ویندوز 7 مرسی از همه دوستان

ho2o2oo
شنبه 17 تیر 1391, 02:14 صبح
سلام دوستان من از دستور زیر برای نشون دادن زمان در یک لبل گذاشتم اما وقتی رو اون کلیک می کنم نمایش داده می شه و هر بار که کلیک می کنم ثانیش تغییر می کنه چطور می تونم این مشکل رو حل کنم از کد زیر هم استفاده می کنم . ممنونم

private void timelabel2_Click(object sender, EventArgs e)
{
this.timelabel2.Text = DateTime.Now.ToString("hh:mm:ss tt");
}

uniqueboy_ara
شنبه 17 تیر 1391, 09:38 صبح
یه تایمر به پروژه اضافه کن و تو رویداد tick ش این کد رو بنویس!
private void timer1_Tick(object sender, EventArgs e)
{
label1.Text = DateTime.Now.ToLongTimeString();
}
بعد هم توی رویداد formLoad فرم اصلیت این کد رو بنویس:
timer1.Start();

ho2o2oo
شنبه 17 تیر 1391, 12:20 عصر
مرسی اقا ممنونم . دقیقا درست شد و چیزیی که می خواستم بود ممنونم .

Direlap
شنبه 17 تیر 1391, 12:29 عصر
دوست عزیز http://barnamenevis.org/member.php?142181-uniqueboy_ara
آموزشی به غیر ویدیو هایی که آماده کردید مثل پی دی اف برای EF هستش ؟ از پایه بیاد توضیح بده فقط این تکنولوژی رو و نه لینک رو .

ممنونم