View Full Version : سوال: سوالات يك تازه كار در مورد C#
Programmer 1
شنبه 11 مهر 1388, 07:11 صبح
سلام ،
من تازه شروع به برنامه نويسي C# كرده ام و اين تاپيك را زدم تا سوالات خود را در آن قرار دهم و اميدوارم كه شما دوستان به سولات جواب دهيد ،
ااين هم سوال اول ، من حدود 2 روز قبل سوالي را از سايت p30pedia پرسيدم و دوستان براي جواب سوالم مرا به اين سايت ارجاع دادند ، لينك زير آخرين سوال من بود ( پست 8 ) لطفا به آن پاسخ دهيد ( در همين جا )
http://forum.p30pedia.com/showthread.php?p=94930#post94930
با تشكر /.
mahdi_7610
شنبه 11 مهر 1388, 08:02 صبح
دوست عزیز این نوع سوال پرسیدن درست نیست .
چون برای دیدن لینک ها فعال اون سایت باید عضو اون سایت شد .
Parham.D
شنبه 11 مهر 1388, 13:03 عصر
در این سایت بهتر است که اول سوال خود را جستجو کنید. بخصوص برای کسانی که مبتدی هستند موارد مورد نظر به راحتی پیدا میشن.
Programmer 1
یک شنبه 12 مهر 1388, 08:14 صبح
سلام ،
اين هم اون سوالي كه مي گفتم :
1) در ويرايشگر كد ويژوال استوديو براي اينكه به محل تعريف يك تابع پرش كنيم چه كليد تركيبي بايد استفاده شود ؟ از طريق كليك راست و انتخاب go to definetion را بلدم فقط آيا كليد تركيبي براي اين كار وجود دارد و كليد تركيبي نيز براي برگشت به عقب وجود دارد ؟ (VS 2008)
چون مشكلات به وجود امده زياد بود يك فرم ساده شده طراحي كردم تا شما بتونيد از روي اون جواب سوالات من رو بدهيد :
فرم های زیر را در نظر بگیرید
http://img2.tinypic.info/files/r38clwljgp9jttsacc5s.png (http://img2.tinypic.info/)
http://www.gigaimage.com/images/ypy2sc8dqshcg5nn6rc9.png (http://www.gigaimage.com/)
2) مشکل اول این است که الان من در رويداد لود فرم اول ، دستورات اتصال به بانك اطلاعات را نوشته ام و به هنگام اجرا بدون هيچ خطايي اطلاعات در DataGridView نمايش داده مي شود ، در هنگام كليك بر روي دكمه افزودن نيز اطلاعات وارد شده به درستي وارد شده و در جدول نمايش داده مي شوند ، كد مربوط به دكمه ذخيره تغييرات هم اين است كه براي به روز رساني بانك اطلاعات است : da.update(ds,"List"); ( da شي اي از نوع DataAdapter است و ds یک دیتاست است )
اگر دكمه ذخيره تغييرات زده نشود اطلاعات موجود در ديتا ست در بانك اطلاعاتي ذخيره نمي شود ، حال مشكلي كه هست اين است كه با انجام تغييراتي در DataGridView و زدن دكمه ذخيره تغييرات ، از دستور بالا خطا گرفته مي شود و جالب اين جاست وقتي كه مثلا اطلاعات جديدي وارد مي شود و همان اطلاعات را در DataGridView تغيير دهيم و دكمه ذخيره تغييرات را بزنيم اطلاعات ويرايش شده به درستي ذخيره مي شود ولی تغییر دادن سایر اطلاعات جدول و زدن دکمه ذخیره تغییرات باعث بروز خطا می شود و خطا نیز از همان دستور بالا گرفته می شود .
3) مشکل بعدی اینه که من قصد دارم كه وقتي هيچ اطلاعاتي در فیلدها وارد نشود و دکمه افزودن زده شود پيامي در پنجره About در برچسب تعيين شده نمايش داده شود براي اين كار دستورات زير را نوشتم ولي باز هم خطا داده ميشود : ( این دستورات را در رویداد کلیک دکمه افزودن قرار داده ام )
Form objMessage=new frmMessage();
objMessage.lblMessage.text="Message";
objMessage.show();
بعضي دوستان در سايت developercenter مشكل اين خطا را در عمومي تعريف نكردن خاصيت modifier دانستند و براي رفع خطا گفتند كه خاصيت modifier برچسب را public قرار دهيد ولي بازم خطا داد ، دوباره گفتند كه بايد در فرم message يك پراپرتي تعريف كنيد ولي باز هم نشد ، مشكل كجاست ؟
4) من يك تابع براي بررسي خالي بودن فيلدهاي اطلاعاتي نوشته ام به اين صورت :
public bool IsEmptyForm()
**
if (txtFirstName.Text == string.Empty)
**
return true;
}
خطاي داده شده در خط اول تابع بالا : Error not all code paths return a value
و وقتي در جايي از برنامه مي خواهم از اين تابع استفاده كنم دوباره خطا مي دهد :
مثلا :
if (IsEmptyForm == true)
**
//Commands
}
خطاي داده شده : Operator '==' cannot be applied to operands of type 'method group' and 'bool'
کلا شد خطا این برنامه !!! ، انشاء الله که سوالات من روشن بوده باشد ، اگر هم در جایی ، منظور از سوالم روشن نبود ، بگویید تا اطلاعات بیشتری ارائه دهم .
syntax کدها هم درست هست ، فقط به علت کپی و پیست ممکن است به هم ریخته باشند
آقا حتما جواب بديد ، الان يك هفته است كه كارم گيره .
با تشكر /.
Reza_Yarahmadi
یک شنبه 12 مهر 1388, 11:57 صبح
1- فکر نمیکنم کلید میانبری واسه این کار باشه!! سریعترین راه دسترسی به متدها استفاده از کمبو باکس بالا و سمت راست در VS است.
2- از کدوم دستور خطا میگیره؟ اینجا که چیزی معلوم نیست!!
3- این کد بصورت دستی نوشته شده و احتمالا Syntaxاش ایراد داره (همیشه خاصیت Text حرف اولش بزرگه!!)، بعد از Public کردن لیبل دوباره همین کد رو بنویسید. اگه VS بعد از زدن هر نقطه (.) و نوشتن چند حرف از شئ ، خاصیت ، متد ... مورد نظرتون ، نام اون شئ رو نشون داد مشکلی نیست ولی اگه نشون نده یعنی یه جای کار میلنگه و باید بررسیش کنید.
4- احتمالا شما فقط توی یک شرط دستور return رو نوشتید در حالی که باید طوری بنویسید که در هر حالت مقدار بازگشتی داشته باشه( یعنی یه else هم بذارید و مقدار False رو برگشت بدید)
برای استفاده از متدها باید بعد از اسمشون پرانتز باز و بسته () بذارید.
اَرژنگ
یک شنبه 12 مهر 1388, 14:33 عصر
لطفا سوالها را در تپیکهایه جدا با عناوین مخصوص به خود بفرستید، در برنامه نویسی هم قسمت بندی زندگی را آسانتر میکنه.
جواب دادن ۴ تا سوال در یک تپیک گیج کننده است (برایه من )
1) در ويرايشگر كد ويژوال استوديو براي اينكه به محل تعريف يك تابع پرش كنيم چه كليد تركيبي بايد استفاده شود ؟ از طريق كليك راست و انتخاب go to definetion را بلدم فقط آيا كليد تركيبي براي اين كار وجود دارد
http://www.dofactory.com/ShortCutKeys/ShortCutKeys.aspx
F12
و كليد تركيبي نيز براي برگشت به عقب وجود دارد ؟ (VS 2008)
http://www.dofactory.com/ShortCutKeys/ShortCutKeys.aspx
Ctrl-+
Goes back to the previous location in the navigation history. (For example, if you press Ctrl-Home to go to the start of a document, this shortcut will take the cursor back to wherever it was before you pressed Ctrl-Home.) Ctrl-Shift-+
Moves forward in the navigation history. This is effectively an undo for the View.NavigateBackward operation
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.