سلام
من تو #C مبتدی هستم و سئوالات زیر رو دارم :
چرا از یه کلاس وقتی میخایم توی جایی شی ایجاد کنیم نام کلاس رو برامون میاره یعنی اگه سطح دسترسی شو ننویسیم، public میگیره ولی اگه کلاس های تو در تو بنویسیم و اگه برای کلاس داخلی سطح دسترسی مشخص نکنیم ، موقع ایجاد شی ، کلاس داخلی رو توی لیست نمیاره یعنی اتوماتیک سطح دسترسی شو private میگیره بصورت پیش فرض؟
----------------------------------
برای فراخونی متدهای static ای که فضای نام اش هم نام فضای نام اون کلاس و متدی هست که از اونجا فراخونی میکنیم ، بازم باید نام فضای نام را بنویسیم؟
یعنی اگه متد meth در کلاس زیر را :
namespace Project_1
{
class Parent
{
public static void meth()
{
string x = "ali";
}
}
}
بخایم در کلاس زید فراخونی کنیم ، حتما باید نام فضای نام را بنویسیم با اونکه فضای نام هر دو کلاس هم نام هست (یعنی نمیشه بصورت مستقیم نام کلاس و نام متد را فراخوند) ؟ اگه آره ، چرا؟ فضای نام ها که هم نام باشن ، همدیگه رو میشناسن که!! :
namespace Project_1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}private void button1_Click(object sender, EventArgs e)
{
Class ClassObj = new Class();
Project_1.Parent.meth();
}
}
}
چن تا!!! فرقشون با هم چی ان؟
string y = Convert.ToString(Keys.E);
MessageBox.Show(y);
مگه نباید فقط وقتی دکمه E را میزنم فقط عمل کنه؟
------------------------------------------------------
و اینکه من در کد زیر که توی رویداد KeyDown گذاشتم ، میخوام وقتی کلیدهای ترکیبی Ctrl+E رو زدم ، بهم پیام بده ولی نمیده . علت اشتباهم کجاست؟ :
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Control==true && e.KeyData==Keys.E)
{
MessageBox.Show(e.Control.ToString()+" + "+e.KeyData.ToString()+" pressed");
}}
برچسب:
نویسنده: محمد رضا جوادیان